2013-08-31 64 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"]; 
相关问题