0

我在 PHP 中运行以下查询:

$ticketTotal = mysql_query("SELECT SUM(`tickets_issued`) FROM `tb_att_registered_attendants` WHERE `confirmation_code`!='000000'");

但是当我返回时$ticketTotal,我得到Resource id #33了,当我转储变量时,我得到了resource(33) of type (mysql result)。当我在 phpMyAdmin 中运行完全相同的查询时,我得到了正确的结果。我似乎在谷歌上找不到太多东西。到底是怎么回事?

提前感谢您的帮助。

4

3 回答 3

1

$ticketTotal不保存您的查询结果。您仍然必须实际获取它们。

while ($row = mysql_fetch_assoc($ticketTotal))
{
    print_r($row);
}

请不要mysql_*在新代码中使用函数。它们不再被维护并被正式弃用。看到红框了吗?改为了解准备好的语句,并使用PDOMySQLi -本文将帮助您决定使用哪个。如果您选择 PDO,这里有一个很好的教程

于 2013-01-13T01:00:06.613 回答
0

您可以使用此解决方案:

$Row = mysql_fetch_array($ticketTotal);
$sum = $Row['SUM(tickets_issued)'];

我已经为我的代码测试了它并且它工作正常。

于 2013-05-12T01:32:52.060 回答
0

如果您不使用 PHP5.5.0,那么您可以使用以下方式,因为 mysql_result 自 PHP5.5.0 起已弃用

$result = mysql_query("SELECT SUM(`tickets_issued`) FROM `tb_att_registered_attendants` WHERE `confirmation_code`!='000000'");
$ticketTotal = mysql_result($result,0);
于 2013-01-13T07:24:41.160 回答