使用mysqli_query()获得错误

时间:2015-05-14 10:16:43

标签: php mysqli error-handling

我遇到了这种错误:

  

警告:mysqli_query()期望参数1为mysqli,null给定   在

我做错了什么?

代码:

<?php

require('config.php');

function showAll() {
    $query = mysqli_query($connect, "SELECT * FROM cont")or die(mysqli_error());
    $res = mysqli_fetch_assoc($query);


    $data = array();
    while ($row =  mysqli_fetch_assoc($res)) {
        $data[] = $row;     
    }
    return $data;   
}

?>

3 个答案:

答案 0 :(得分:2)

这个错误说你的$ connect是null,你的连接是否正常? 你是否创建了与mysql服务器的连接:

$connect = mysqli_connect("localhost","my_user","my_password","my_db");

另一件可能出错的事情是:

 while ($row =  mysqli_fetch_assoc($res)) {
        $data[] = $row;     
    }

你的$ res变量是一个带有1个结果的数组,而while循环需要mysql资源(在你的情况下是查询变量)。 你应该试试这个:

 while ($row =  mysqli_fetch_assoc($query)) {
        $data[] = $row;     
    }

答案 1 :(得分:1)

添加

global $connect;

function showAll()的开头和你有$connect = mysqli_connect()

的函数

答案 2 :(得分:-2)

$connect存在问题。确保$connect中传递的参数正确无误。

$connect("localhost","root","password","databaseName");