问题是:我今天开始交换使用 mysqli。没什么大不了的,只需更改一些语句即可。一切顺利,没有错误……除了我根本无法让它执行任何查询。我对我的语法进行了两次和三次检查。我什至开始创造它应该返回错误的情况(试图让它插入到不存在的表或具有超出列限制或不匹配类型的值)并且......什么都没有。它不返回错误,它不写入。如果参数一不是 mysqli 类型,它会报错。
相关代码如下:
$con = mysqli_connect("localhost", "root", "","test");
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$query = "INSERT INTO files VALUES (NULL, 5, 'hello')";
mysqli_query($con, $query);
什么也没有。它运行没有问题,但它从不写入记录。我什至可以将 $query 更改为“hdjhkfhhjfkd”,它运行没有问题。 mysqli_query() 只是没有执行,期间。我唯一能让它使用react的情况是,如果我将 $con 更改为其他任何内容,那么它会提示它需要一个 mysqli 类型。
想法?这让我发疯了。
最佳答案
你检查过mysqli_query()的返回值了吗?如果发生错误,它返回 FALSE。在那种情况下 mysqli_error()为您提供有关错误的更多信息。
<?php
$con = mysqli_connect("localhost", "root", "", "test");
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$query = "INSERT INTO files VALUES (NULL, 5, 'hello')";
echo "<pre>Debug: $query</pre>\m";
$result = mysqli_query($con, $query);
if ( false===$result ) {
printf("error: %s\n", mysqli_error($con));
}
else {
echo 'done.';
}
关于php - 执行 mysqli_query 时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2304894/