2012-10-22 118 views
-1

很好,當我執行我的網頁我得到這個錯誤:PHP錯誤:mysql_fetch_assoc()..查詢運行在phpMyAdmin

Warning: mysql_fetch_assoc() : supplied argument is not a valid MySQL result resource ...

我試圖上運行的phpMyAdmin的SQL目錄,並運行良好。

下面是完整的代碼:

<?php 

$connect_error = 'Sorry, we have connection problems.'; 

mysql_connect('localhost','user','password') or die($connect_error); 
mysql_select_db('mydb') or die($connect_error); 



$result = mysql_query("SELECT * FROM tbl_main ORDER BY id desc limit 1"); 
$rows = array(); 


    while($r = mysql_fetch_assoc($result)) { //ERROR POINTS HERE 
    $rows['id'][] = $r; 
    } 

print json_encode($rows); 



?> 

我爲什麼我得到這個錯誤?

+0

mysql_error()在執行mysql_query()後會產生什麼? –

+0

嘗試使用'mysql_error()'輸出MySQL錯誤。 – Florent

+3

請按照手冊中的示例所述進行適當的錯誤檢查。 http://php.net/manual/en/function.mysql-query.php,它會給你一個來自mySQL的有意義的錯誤信息。 –

回答

1

如果mysql_query返回FALSE,那麼你會得到一個錯誤。如果SQL存在問題,或者數據庫連接出現問題,它可能會返回false。

致電mysql_error()瞭解更多關於發生的錯誤。

此外,你現在應該真的在使用PDOMySQLi

<?php 

$connect_error = 'Sorry, we have connection problems.'; 

$link = mysql_connect('localhost','user','password') or die($connect_error); 
mysql_select_db('mydb', $link) or die($connect_error); 

$result = mysql_query("SELECT * FROM tbl_main ORDER BY id desc limit 1", $link); 
if ($result) { 
    $rows = array(); 

    while($r = mysql_fetch_assoc($result)) { //ERROR POINTS HERE 
     $rows['id'][] = $r; 
    } 

    print json_encode($rows); 
} else { 
    print mysql_error($link); 
} 

?> 
+0

添加完整的源代碼 – Satch3000

相關問題