Php显示资源ID和错误

时间:2013-04-19 05:43:23

标签: php mysql

每当我运行此代码时,我都会获得资源ID。我该如何解决这个问题:

function ct()
{
    $result = mysql_query("SELECT `Quantity` FROM `shopping cart` WHERE `Customer_id`=1") or die(mysql_error());
    mysql_fetch_array($result);   
    echo "$result";
}

2 个答案:

答案 0 :(得分:4)

您需要按mysql_fetch_arraymysql_fetch_assoc

获取结果
$row = mysql_fetch_array($result);

  

mysql_query返回的是什么

     

对于返回结果集的SELECT,SHOW,DESCRIBE,EXPLAIN和其他语句,mysql_query()在成功时返回资源,如果出错则返回FALSE。

     

对于其他类型的SQL语句,INSERT,UPDATE,DELETE,DROP等,mysql_query()成功时返回TRUE,错误时返回FALSE。

Please, don't use mysql_* functions in new code。它们不再被维护and are officially deprecated。请参阅red box?转而了解prepared statements,并使用PDOMySQLi - this article将帮助您确定哪个。如果您选择PDO here is a good tutorial


有问题的编辑后

mysql_fetch_array($result);返回与获取的行对应的数组,并将内部数据指针向前移动。因此,您必须将该数组分配给任何要使用的变量,如

while($row = mysql_fetch_array($result)){   
 echo $row ['field_name'];
}

或者

$row = mysql_fetch_array($result); // want to fetch only one row 
 echo $row ['field_name'];

答案 1 :(得分:-1)

$link = mysqli_connect("HOSTNAME", "USERNAME", "PASS", "DBNAME");    
$result = mysqli_query($link,"SELECT `Quantity` FROM `shopping cart` WHERE `Customer_id`=1") or die(mysql_error());
while($row = mysqli_fetch_array($result))
{
    echo $row['Quantity'];
    echo "<br />";
}
mysqli_close($con);