2011-05-22 39 views
1

如何在php-mysql腳本運行期間獲得詳細的錯誤描述?如何在php-mysql腳本失敗時獲取詳細的錯誤報告?

我有以下聲明腳本失敗並顯示自定義錯誤消息 - 「或死」的內容。

我想從MySQL獲得實際的錯誤(而不是我所提到的自定義錯誤),這將提供更好的想法有關場景 - 無論它是一個數據庫的問題或服務器連接問題等。

這是代碼我有我需要增強錯誤報告

$query = "SELECT * FROM table_name"; 
$result = mysqli_query($db_conn, $query) 
    or die('Connected to database, but querying failed'); 

謝謝!

回答

1

看看mysqli_error的手冊頁。在「Procedural style」一節中,您將找到一個完整的示例,顯示如何設置數據庫連接和查詢數據庫,這兩個步驟都帶有錯誤處理。

如果你想從你的腳本詳細的錯誤信息,您可以把線

error_reporting(E_ALL); 
ini_set('log_errors', true); 
ini_set('error_log', '/tmp/php-errors.log'); 

在你的代碼的開始。這樣,來自PHP的所有錯誤都會寫入日誌文件。確保日誌文件的路徑存在(/tmp只是一個示例)並且可以由Web服務器寫入,否則錯誤將被默默丟棄。

附註:雖然「or die()」模式適用於小例子,但不應將其用於生產代碼。

+0

感謝您的指導,@chiborg – 2011-05-23 12:06:58

4

退房mysql_error功能。

+1

'mysqli_error'錯誤實際上是:'mysqli_query($ db_conn,$查詢)' – 2011-05-22 20:25:37

+0

@onteria_: 我試着在上面的連接和查詢的程序格式mysqli_error,但它總是返回錯誤說mysqli_error需要一個準確「xxxxx」,但零供應... (其中xxxx變化,有時物體,有時字符串等..).. 請問你能幫我在這裏查詢..我想它給PHP的錯誤信息(而不是我的客戶死信息),當查詢失敗。 非常感謝! – 2011-05-23 06:25:31

0

我更喜歡使用PDO,並讓PDO拋出異常。

0

您可以將查詢插入到phpmyadmin上的查詢頁面,即使用它。但這不會告訴你,如果錯誤是與變量

相關問題