Php 在执行mysqli_查询时遇到问题
问题是:我今天开始交换使用mysqli。没什么大不了的,只是换了几句话。一切顺利,没有错误。。。除了我根本不能让它执行任何查询。我已经仔细检查了我的语法。我甚至开始创建它应该返回错误的情况(试图让它插入到不存在的表中,或者值超过列限制或与类型不匹配的表中),并且。。。没有什么。它不会返回错误,也不会写入。如果参数one不是mysqli类型,它将发出抱怨 以下是相关代码:Php 在执行mysqli_查询时遇到问题,php,mysql,mysqli,Php,Mysql,Mysqli,问题是:我今天开始交换使用mysqli。没什么大不了的,只是换了几句话。一切顺利,没有错误。。。除了我根本不能让它执行任何查询。我已经仔细检查了我的语法。我甚至开始创建它应该返回错误的情况(试图让它插入到不存在的表中,或者值超过列限制或与类型不匹配的表中),并且。。。没有什么。它不会返回错误,也不会写入。如果参数one不是mysqli类型,它将发出抱怨 以下是相关代码: $con = mysqli_connect("localhost", "root", "","test"); if (mys
$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更改为“hdjhkfhjfkd”,它运行起来没有问题。mysqli_query()只是没有执行,句号。我能让它做出反应的唯一时间是,如果我将$con更改为其他任何内容,那么它会抱怨它需要mysqli类型
想法?这让我发疯 是否检查了mysqli_query()的返回值?如果发生错误,则返回FALSE。在这种情况下,将为您提供有关错误的更多信息
<?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模块。我认为它是默认禁用的。你自己编译过PHP吗?您的配置是什么?mysqli_query()是否返回某些内容?不,它不会为特定语句返回任何内容。这只是一个插页。就phpinfo()而言,mysqli是启用的。我正在运行Zend社区版的最新版本。PHP 5.3,MYSQL 5.0.5谢谢!似乎是一个恶意的语法错误。我最终通过大量的单引号搜索运行了它。您应该在开发服务器上设置display\u startup\u errors=1,或者关注错误日志。在脚本中有问题的部分有一些“保证”的视觉反馈通常也是一个好主意。对我来说,在一个教程中,他们为id设置了'
,而不是NULL
。