Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.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 mysql查询不应返回true';T_Php_Mysql - Fatal编程技术网

Php mysql查询不应返回true';T

Php mysql查询不应返回true';T,php,mysql,Php,Mysql,如果$key不是数据库key\u code列中的值,则这并不是我所期望的那样。相反,它只是继续。我可能错过了一些非常简单的东西 $key = $_GET['k']; $keycheck = mysql_query("SELECT * FROM ib_dist WHERE key_code = '$key'"); if (!$keycheck) { die("A database error has occured."); } else { mysql\u query根据查询是否成

如果
$key
不是数据库
key\u code
列中的值,则这并不是我所期望的那样。相反,它只是继续。我可能错过了一些非常简单的东西

$key = $_GET['k'];

$keycheck = mysql_query("SELECT * FROM ib_dist WHERE key_code = '$key'");

if (!$keycheck) {

   die("A database error has occured.");

} else {

mysql\u query
根据查询是否成功执行返回资源或
false
。它不以任何方式表示返回了多少行,也不表示查询是否做了什么,只表示查询是否成功执行


检查返回的结果数或分别计算返回的结果。

尝试检查找到的行数

$key = $_GET['k'];

$result = mysql_query("SELECT * FROM ib_dist WHERE key_code = '$key'");

if (!$result) {

   die("A database error has occured.");

} else if (0 == mysql_num_rows($result)) {
    // unknown key action
} else {
    // known key action
}

这不是
mysql\u query()
实际工作的方式。请参阅手册:最疯狂的代码。你想知道什么?如果查询失败或成功,则返回!否,
mysql\u query()
如果查询失败,则返回false;如果查询成功执行,则返回资源。它从不返回布尔值true。@Arjan它可以返回
true
:对于其他类型的SQL语句,如INSERT、UPDATE、DELETE、DROP等,mysql\u query()成功时返回true,错误时返回FALSE。