如何检查使用旧API的MySQL查询是否成功?
如何检查MySQL查询是否成功,而不是使用die()
我正在努力实现…
mysql_query($query); if(success){ //move file } else if(fail){ //display error }
这是mysql_query
手册页中的第一个例子:
$result = mysql_query('SELECT * WHERE 1=1'); if (!$result) { die('Invalid query: ' . mysql_error()); }
如果你想使用除die
之外的东西,那么我会build议trigger_error
。
你也可以使用mysql_errno()
。
$result = mysql_query($query); if(mysql_errno()){ echo "MySQL error ".mysql_errno().": " .mysql_error()."\n<br>When executing <br>\n$query\n<br>"; }
如果您的查询失败,您将收到一个FALSE返回值。 否则,你会收到一个资源/ TRUE。
$result = mysql_query($query); if(!$result){ /* check for error, die, etc */ }
基本上只要它不是假的,你就没事。 之后,你可以继续你的代码。
if(!$result)
这部分代码实际上运行您的查询。
mysql_query
函数用于在php中执行mysql查询。 如果查询执行失败, mysql_query
返回false。或者你可以尝试使用mysql_error()
函数
$result=mysql_query($sql)
要么
die(mysql_error());
在上面的代码片断中,如果查询执行失败,那么它将终止执行并在执行sql查询时显示mysql错误。
只能放:
or die(mysqli_error());
在你查询之后
它会以echo
重演错误
例
// "Your Query" means you can put "Select/Update/Delete/Set" queries here $qfetch = mysqli_fetch_assoc(mysqli_query("your query")) or die(mysqli_error()); if (mysqli_errno()) { echo 'error' . mysqli_error(); die(); }
如果使用MySQLi
bind_param尝试把这一行放在查询之上
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);