2013-08-31 108 views
-3

給我總是當我運行我的代碼警告:mysql_fetch_assoc()預計參數1是資源,布爾在

0: 
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\fyp\admin_vieworders_details.php on line 12 
Query Failed!You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 

這裏得到這個錯誤是我的數據庫

表order_detail {Order_Detail_ID(PK) ,Order_Quantity,SUB_TOTAL}

表順序{Order_ID上,order_date的,Order_Time,Delivery_Charge,Delivery_Name}

這裏是我的代碼

$orderid [email protected]$_GET["id"]; 
$detail = "SELECT 
       order.*, 
       order_detail.Order_Quantity, 
       order_detail.Sub_Total 
      FROM `order` AS a, `order_detail` AS b 
      WHERE order_detail.Order_ID = `order`.Order_ID AND order_detail.Order_Detail_ID=$orderid"; 

$result = mysql_query($detail); 
$row = mysql_fetch_assoc($result); 

     if($result === FALSE) 
    { 
      die("Query Failed!".mysql_error().$result); 
    } 
+0

**警告:**'mysql_ *'功能被棄用PHP 5.5.0的,並會在將來被移除。相反,[MySQLi](http://www.php.net/manual/en/book.mysqli.php)或[PDO_MySQL](http://www.php.net/manual/en/ref.pdo-應該使用mysql.php)擴展名。 –

+0

如果它包含值,你試過在這個查詢之前echo'$ orderid'嗎? –

+0

@Jess Tan:說真的,請看看標有** Related **的右欄。我們知道每個人的問題都很特殊,但這只是一個常見的錯誤。 – hakre

回答

1

檢查mysql_error()在致電mysql_fetch_assoc()之前。您的查詢失敗,查詢功能返回false

$result = mysql_query($detail); 
if (!$result) { 
    die("Error: ".mysql_error()); // Note: raw database errors are useless for users 
            // better log the error an create a "nice" error page 
} 
$row = mysql_fetch_assoc($result); 

或者這樣可能會讓你開始。

1

你似乎在你的查詢時出現錯誤:

嘗試:的

$detail = "SELECT 
       a.*, 
       b.Order_Quantity, 
       b.Sub_Total 
      FROM `order` AS a, `order_detail` AS b 
      WHERE b.Order_Detail_ID = a.Order_ID AND 
        b.Order_Detail_ID=$orderid"; 

代替

$detail = "SELECT 
       order.*, 
       order_detail.Order_Quantity, 
       order_detail.Sub_Total 
      FROM `order` AS a, `order_detail` AS b 
      WHERE order_detail.Order_ID = `order`.Order_ID AND 
        order_detail.Order_Detail_ID=$orderid"; 

而且還...

$orderid =$_GET["orderid"]; 

代替

$orderid [email protected]$_GET["id"]; 
相關問題