php - 我这个代码为什么提示错误?

 爱-雨轩_627 发布于 2022-11-17 18:49




      
    


prepare("select * from qq where num=?"); $stmt->execute($num); //这一行提示错误 $res=$stmt->fetchall(PDO::FETCH_ASSOC); ?>
2 个回答
  • 大哥 pdo 如果用 Prepare那就需要绑定值啊,你这个$num 明明是 null 能不给你报错吗
    看你的意思应该是这样 $num = trim($_POST['num']);

    2022-11-17 19:26 回答
  • 自己思考不解释了 <- 有人投诉不友好,只好改一下了。
    1- 表单提交之后数据会出现在以下数组中$_REQUEST(所有外部参数), $_GET(get方式提交) 和 $_POST (post方式提交),而你的例子中<input name=num>提交后保存在$_POST['num']中,而不是$num
    2- 其实没有2,变量不存在导致调用方法的时候参数数量不足。

    <!DOCTYPE html>
    <html>
    <head>
          <meta charset="utf-8">
        <title></title>
    </head>
    <body>
    <form method="post">
        <input type="text" name="num">
        <button type="submit">提交</button>
    </form>
    <?php
    if (isset($_POST['num'])) {
        $pdo=new PDO("mysql:host=localhost;dbname=t1","root","");
        $stmt=$pdo->prepare("select * from qq where num=?");
        $stmt->execute(array($_POST['num']));
        $res=$stmt->fetchall(PDO::FETCH_ASSOC);
        print_r($res);
    }
    ?>
    </body>
    </html>
    2022-11-17 19:26 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有