mysqli_query() 出错

Getting error with mysqli_query()

我收到此类错误:

Warning: mysqli_query() expects parameter 1 to be mysqli, null given in

我做错了什么?

代码:

<?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;   
}

?>

这个错误是说你的 $connect 是空的,你的连接正常吗? 您是否像这样创建了与 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;     
    }

添加

global $connect;

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

的函数

$connect 中出现问题。确保传入的参数$connect正确。

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