Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我的查询有效,那么为什么会出现此错误?_Php_Mysql_Mysqli - Fatal编程技术网

Php 我的查询有效,那么为什么会出现此错误?

Php 我的查询有效,那么为什么会出现此错误?,php,mysql,mysqli,Php,Mysql,Mysqli,我有一个非常简单的查询,可以在phpMyAdmin和我正在使用它的PHP页面中使用,它可以根据一个简单的HTML表单更新一个表: updatecustomers设置customer\u name='$name',customer\u email='$email',customer\u tel='$tel',其中customer\u id=$id LIMIT 1 这完美地更新了表-我可以在phpMyAdmin中看到这一点,我有一个if语句检查报告没有问题的受影响行的数量,但我仍然得到: mysql

我有一个非常简单的查询,可以在phpMyAdmin和我正在使用它的PHP页面中使用,它可以根据一个简单的HTML表单更新一个表:

updatecustomers设置customer\u name='$name',customer\u email='$email',customer\u tel='$tel',其中customer\u id=$id LIMIT 1

这完美地更新了表-我可以在phpMyAdmin中看到这一点,我有一个
if
语句检查报告没有问题的受影响行的数量,但我仍然得到:

mysqli\u fetch\u array()期望参数1是mysqli\u结果,给定布尔值


表示查询不正确。给出了什么?

一个
更新
查询不会返回记录


更新后执行
选择
查询,并迭代这些结果

更新查询导致
mysqli_query
根据更新的成功或失败返回
true
false
。您不应该在其上调用
mysqli\u fetch\u array

您必须将结果集传递给mysqli\u fetch\u array()

在您的情况下,不应该调用mysqli_fetch_array()


检查此答案:

您能指出您使用mysqli_fetch_array()的代码吗?请添加整个代码,因为它可能与此查询无关,只是您使用了一个函数。
mysqli_query
告诉您什么?您可能还需要查看一个准备好的语句,因为名为
O'Connor
的人会打断您的查询。您的查询是有效的,但您缺乏基本的知识。更新不返回任何数据。你怎么能从没有返回数据的东西中提取一行呢?@N.B.我们都是来学习的,不是吗?他发布了足够多的代码,很容易看出哪里出了问题。啊,当然!杜福斯。谢谢。以后,请确保
var\u dump
报告为意外的任何内容。这应该向您显示
bool(true)
,这将帮助您解决问题;)
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if ($mysqli->connect_errno) {
    printf("Connect failed: %s\n", $mysqli->connect_error);
    exit();
}


if ($result = $mysqli->query("UPDATE customers SET customer_name='$name', customer_email='$email', customer_tel='$tel' WHERE customer_id = $id")) {
    // if success  do something here
}