为什么我不能在我的代码中显示正确的输出?如何摆脱资源ID#6?
$total = mysql_query("SELECT SUM(issued_qty) FROM issuance_tbl WHERE issuance_tbl.machine_no_id = '%$find%'");
echo $total;
我总是得到这样的错误:
Resource id #6
感谢您的帮助。
为什么我不能在我的代码中显示正确的输出?如何摆脱资源ID#6?
$total = mysql_query("SELECT SUM(issued_qty) FROM issuance_tbl WHERE issuance_tbl.machine_no_id = '%$find%'");
echo $total;
我总是得到这样的错误:
Resource id #6
感谢您的帮助。
使用mysql_fetch_array提取数据:
$total = mysql_query("SELECT SUM(issued_qty) FROM issuance_tbl WHERE issuance_tbl.machine_no_id = '%$find%'");
$data = mysql_fetch_array($total);
echo $data[0];
顺便说一句,不要使用mysql_ *功能。他们已被弃用。
因为您还没有阅读和理解mysql_query
的文档。它返回表示结果集的资源,而不是结果本身(因为结果可能包含多行)。
如果您在PHP的MySQL支持的早期学习,停止您正在做的事情并学习如何使用PDO来代替。
尽管mysql_
函数已被弃用,您应该切换到mysqli
或pdo
,我会尝试回答您的问题。
该查询看起来很成功,返回了id为#6的资源。要使用资源,你可以打电话mysql_fetch_row
像如下:
$result = mysql_query("SELECT SUM(issued_qty) FROM issuance_tbl WHERE issuance_tbl.machine_no_id = '%$find%'");
$row = mysql_fetch_row($result);
// Then your total is at index 0 of $row array
$total = $row[0];
echo $total;
对于SELECT,SHOW,描述,解释等语句返回的结果集,请求mysql_query()成功返回的资源,或者在错误FALSE。 http://php.net/manual/en/function.mysql-query.php –
[**请不要在新代码中使用'mysql_ *'函数**](http://bit.ly/phpmsql )。他们不再被维护[并被正式弃用](https://wiki.php.net/rfc/mysql_deprecation)。看到[**红框**](http://j.mp/Te9zIL)?学习[*准备的语句*](http://j.mp/T9hLWi),并使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli) - [这篇文章](http://j.mp/QEx8IB)将帮助你决定哪个。如果你选择PDO,[这里是一个很好的教程](http://j.mp/PoWehJ)。 – Touki