如何将MySQL错误写入文件而不是将其显示给用户?
这是我到目前为止所拥有的......
if (!mysql_query($sql_query,$connection))
{
die('Error: ' . mysql_error());
}
echo "Success!";
答案 0 :(得分:6)
你可以在php中使用error_log function。
error_log("You messed up!", 3, "/var/tmp/my-errors.log");
编辑:所以在你的情况下,这将如下所示(虽然我将使用不同的if语句)
if (!mysql_query($sql_query,$connection))
{
error_log(mysql_error() . "\n", 3, "/var/tmp/my-errors.log");
}
echo "Success!";
答案 1 :(得分:1)
使用error_log或fopen / fwrite / fclose / etc。
我经常使用PHP中的set_error_handler创建自己的错误处理程序,并使用trigger_error捕获所有错误并将其写入文件。这对您来说可能是更好的方案;而不是编写大量的error_log(),你可以创建一个错误处理函数,然后使用trigger_error。
答案 2 :(得分:0)
首先,如果您不想向用户显示错误消息,则不应使用die。
其次,您必须将错误消息记录到文件中,而不是使用die。如果您正在使用某些日志库,则可能会将错误输出到某个日志,否则您可能需要查看PHP中的文件处理。
链接 - http://davidwalsh.name/basic-php-file-handling-create-open-read-write-append-close-delete