PHP MySQL错误处理
简单的问题(我希望如此) 目前,我正在使用以下代码:PHP MySQL错误处理,php,mysql,Php,Mysql,简单的问题(我希望如此) 目前,我正在使用以下代码: mysql\u查询($sql)或标题(“位置:/error”) 为了防止脚本的其余部分运行,我需要添加exit或模具()。是否有任何方法可以使用上述内联方法实现这一点,或者我是否需要使用: $result = mysql_query($sql); if (!result) { header("Location: /error"); exit(); } 谢谢那么: function customDie($location) {
mysql\u查询($sql)或标题(“位置:/error”)代码>
为了防止脚本的其余部分运行,我需要添加exit代码>或模具()
。是否有任何方法可以使用上述内联方法实现这一点,或者我是否需要使用:
$result = mysql_query($sql);
if (!result) {
header("Location: /error");
exit();
}
谢谢那么:
function customDie($location) {
header('Location: ' . $location);
exit();
}
mysql_query($sql) or customDie("/error");
您可以检查是否存在MySQL错误。如果以后需要进行检查,请执行以下操作:
$result = mysql_query($sql);
$error = mysql_error() != '' ? true : false;
/* fancy code */
if($error)
{
header(location: url);
exit;
}
编辑:我误读了你的问题,现在发现如果出现错误,你想终止它,这样你就可以:
if(mysql_error() != '')
{
header();
exit;
}
如果查询完成后没有错误,代码将继续。否则,用户将被重定向,代码将停止执行。如果您坚持这样做,最好创建一个自定义查询方法来处理所有这些。差不多
function custom_mysql_query($query) {
$doDebug=true; // Set to true when developing and false when you are deploying for real.
$result=mysql_query($query);
if(!$result) {
if($doDebug) {
// We are debugging so show some nice error output
echo "Query failed\n<br><b>$query</b>\n";
echo mysql_error(); // (Is that not the name)
}
else {
// Might want an error message to the user here.
}
exit();
}
}
函数自定义查询($query){
$doDebug=true;//开发时设置为true,实际部署时设置为false。
$result=mysql\u query($query);
如果(!$result){
如果($doDebug){
//我们正在调试,所以显示一些不错的错误输出
echo“查询失败\n
$Query\n”;
echo mysql_error();/(这不是名称吗)
}
否则{
//可能需要向此处的用户发送错误消息。
}
退出();
}
}
然后只需调用custom_mysql_query而不是mysql_query,那么如果查询失败,那么您将始终死亡,如果$debug
为true,您还将得到失败的查询和数据库错误
但是真的:你不应该使用mysql_查询或者调用它的函数(比如我刚才写的那个)。它太不安全了,永远不能使用。(很难避免sql注入)
使用pdo类而不是mysql方法(谷歌it,在线有很多教程和解释)
function custom_mysql_query($query) {
$doDebug=true; // Set to true when developing and false when you are deploying for real.
$result=mysql_query($query);
if(!$result) {
if($doDebug) {
// We are debugging so show some nice error output
echo "Query failed\n<br><b>$query</b>\n";
echo mysql_error(); // (Is that not the name)
}
else {
// Might want an error message to the user here.
}
exit();
}
}