2

我想知道是否有任何方法可以使 MySQL 错误更清晰。这不是一个很大的问题,但如果它们确实发生了,我希望它们变得漂亮而整洁。

我确实读过一个教程,遗憾的是没有用,但它们似乎给了我希望。

我希望我的 MySQL 错误(例如“无连接”)显示一个错误页面,如 404 错误页面。

有人知道吗?工作教程?

这是我阅读的教程:http: //www.jooria.com/Making-Error-Page-When-The-Mysql-Offline-a66.html

4

2 回答 2

3

添加@以隐藏输出:

<?php
    $host = "localhost";
    $dbuser = "*****";
    $dbpwd = "*****";
    $db = "*****";

    $connect = @mysql_pconnect( $host, $dbuser, $dbpwd );
    if( !$connect ) {
        header( 'Location: /custom-404-page.php' ); die;
    } else {
        $select = @mysql_select_db($db);
    }
?>

像这样的东西应该工作。

$result = @mysql_query ($query, $connection );
if ( mysql_error( $connection ) != "" ) {
    header( 'Location: /custom-404-page.php' ); die;
}

或者,如果您已经设置了标题,请替换header( 'Location: /custom-404-page.php' );为:

echo '<script>window.location.href="custom-404-page.php";</script>';

!注意:在函数调用前放置一个@ 会抑制所有错误消息。小心使用;您可以认为一切正常,但实际上并非如此!

于 2012-07-13T13:48:48.633 回答
-1

你可以这样做:

$connect = mysql_pconnect($host, $dbuser, $dbpwd);
if(!$connect) {
header('Location: /noconnection.html');
exit();
}

如果您只想简单地做异常

$mysqli = new mysqli($address,$username,$password,$database);
if ($mysqli AND $mysqli->connect_error)
throw new Exception("DB Error ($mysqli->connect_errno): $mysqli->connect_error);
于 2012-07-13T13:54:04.630 回答