2013-07-20 135 views
0

我有一個網站與數據庫連接。這個連接對於網站來說非常重要,所以如果它不能建立數據庫連接,我需要'死'這個網站。在「或死」是不是一個好主意,所以我想這:如何建立數據庫連接無法建立網站

$host='localhost'; 
$un='root'; 
$pw='mypass'; 
$dbname='home'; 

try { 
    $db = new mysqli($host, $un, $pw, $dbname); 
    if ($db->connect_errno) { 
     throw new Exception('Fail: '.$db->connect_errno); 
    } 
} 
    catch(Exception $e) 
{ 
    die($e->getMessage()); 
} 

但隨後,用戶可以看到錯誤消息:

mysqli::mysqli() [mysqli.mysqli]: php_network_getaddresses: getaddrinfo failed: no such host is known 

Fail: 2002 

什麼是檢查的最佳途徑連接是否正常,如果沒有,請使用錯誤消息來終止網站?

感謝您的幫助!

+0

只需登錄任何你想顯示錯誤消息和'echo'。 – jeroen

+0

不,定義對象時發生錯誤 – Jordy

+0

@Jordy它可以連接127.0.0.1嗎? – user4035

回答

1
catch(Exception $e) 
{ 
    die($e->getMessage()); 
} 

將打印一條消息,並終止腳本

+0

不,定義對象時發生錯誤 – Jordy

+0

您的意思是說,它不是由異常處理的?你能告訴,錯誤是什麼。也許,我們應該爲它編寫2-nd異常處理程序? – user4035

+0

看到我編輯的帖子;) – Jordy

0

記錄錯誤和die使用定製信息

error_log($e->getMessage()); 
die('custom message'); 
+0

看到我編輯的帖子,總是有一個錯誤消息像mysqli :: mysqli()[mysqli.mysqli]:php_network_getaddresses:getaddrinfo失敗: – Jordy