PHP将MySQL错误写入文件

时间:2012-07-15 18:59:24

标签: php mysql

如何将MySQL错误写入文件而不是将其显示给用户?

这是我到目前为止所拥有的......

if (!mysql_query($sql_query,$connection))
  {
  die('Error: ' . mysql_error());
  }
echo "Success!";

3 个答案:

答案 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_logfopen / 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