gpt4 book ai didi

PHP MySQLi fatal error : Call to a member function fetch_array() on a non-object in

转载 作者:行者123 更新时间:2023-11-30 00:08:19 24 4
gpt4 key购买 nike

收到此错误,但不确定发生了什么。刚开始使用 mysqli。

$query = 'SELECT name, email FROM US__users WHERE state="' . $state . '" ORDER BY zip ASC LIMIT 5';
$result = $mysqli->query($query);

while ($row = $result->fetch_array()) {
print ($row['name'] . ' ' . $row['email']);
}

$result->free();

目前 MySQL 数据库中只有一行。然而,当我复制 $query 并在 mysql 命令提示符下运行它时,它查询正常并显示一个结果。

最佳答案

查询字符串在语法上不正确。你有这个:

$query = 'SELECT name, email FROM users WHERE state="' $state '" ORDER BY zip ASC LIMIT 5';

尝试使用双引号 (") 来替换字符串:

$query = "SELECT name, email FROM users WHERE state='$state' ORDER BY zip ASC LIMIT 5";

或者如果您出于某种原因想要串联字符串中的值:

$query = "SELECT name, email FROM users WHERE state='" . $state . "' ORDER BY zip ASC LIMIT 5";

如果您仍然遇到问题,另一个想法是使用准备好的语句方法;你永远不知道 state 是否需要过滤。所以试试这个。

$query = "SELECT name, email FROM US__users WHERE state=? ORDER BY zip ASC LIMIT 5";

$stmt = $mysqli->prepare($query);

$stmt->bind_param('s', $state);

$result = $stmt->execute();

$stmt->close();

while ($row = $result->fetch_array()) {
print ($row['name'] . ' ' . $row['email']);
}

$result->free();

关于PHP MySQLi fatal error : Call to a member function fetch_array() on a non-object in,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24316212/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com