2014-02-11 180 views
0

我得到以下錯誤爲該特定行,我不知道這裏有什麼問題。有人可以幫忙嗎?警告:mysql_fetch_array():錯誤

if ($updbS == "Books" || $updbS == "Pens") { 
$querySf = "SELECT SUM(db1) AS stationery FROM db2 WHERE items = '$low'"; 
$resultSf = mysql_query($querySf); 
$rSf = mysql_fetch_array($resultSf); **//Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource...** 
$totalSf = $rSf['stationery']; 
$totTMonth = $totalSf; 
if ($totTMonth==''){ 
    $totTMonth = '0'; 
} 
+3

你[連接](http://us2.php.net/function.mysql-connect)到你的數據庫?另外,'mysql_ *'函數已被棄用。相反,您應該考慮*** mysqli ***或*** PDO ***功能。 – War10ck

+2

檢查'mysql_error',看起來你的查詢失敗。另請注意,mysql_ *函數已棄用。使用mysqli或PDO .. –

+0

不要使用mysql_ *。改用PDO或mysqli_ *。 – bjb568

回答

0

mysql_query可能會收到錯誤並返回false。你應該檢查如下:

if ($resultSf === false) { 
    $error = mysql_error(); 
} else { 
    $rSf = mysql_fetch_array($resultSf); **//Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource...** 
    $totalSf = $rSf['stationery']; 
    $totTMonth = $totalSf; 
    if ($totTMonth==''){ 
     $totTMonth = '0'; 
    } 
} 

儘管你應該切換到MySQLi或PDO擴展數據庫訪問。

+0

謝謝。沒有錯誤。但是當我包含if($ resultSf === false){line它不顯示任何錯誤?這是爲什麼? – NathaliaZeed

+0

存在錯誤。我的代碼檢查是否發生了錯誤,如果它檢測到錯誤,它將把信息放在'$ error'中。打印它,它會告訴你錯誤是什麼。 – T0xicCode

0

您查詢可能不成功。

你在哪裏連接到數據庫? 如果你var_dump $ resultSf會發生什麼?