准备不充分的声明。没有得到字符串

时间:2015-07-23 12:55:19

标签: php mysql while-loop prepared-statement

我在这行代码中收到以下错误...

FindControl

Warning: mysqli::query() expects parameter 1 to be string, object given

我无法弄明白?我的联系是正确的,正如上面准备好的声明一样。我已经尝试在页面上移动内容并读取它可能是因为我正在混合mysqli和mqsql,但是我正在做什么我的sql?

导致此错误的原因是什么?

        if ($result2 = $con->query($stmt2)) {

2 个答案:

答案 0 :(得分:0)

这是因为你试图使用Prepared Statement OBJECT执行查询字符串:在你的代码中,$ stmt2是一个预备语句对象$ stmt2 = $ con> prepare(" SELEC

答案 1 :(得分:0)

If条件不适用于assign用于compere的变量。所以改变你的状况

$stmt2 = $con->prepare("SELECT `id`, `category_id`, `topic_id`, `post_creator`, `post_content`, `post_date` FROM forum_posts WHERE `category_id`=? AND `topic_id`=?");
        if($stmt2===false) {

         // DO some error message
         }else{
          // Rest code
        }

$stmt2 =$con->prepare()在这里你写your query而不是准备声明$con->query('your query')