3

我想显示销售人员完成的销售/购买次数。我有一个搜索框,当我输入他们的名字时,它会返回一个数字。因此,要计算总购买量,我使用以下代码:

<?php

mysql_connect ("****", "****","****")  or die (mysql_error());
mysql_select_db ("*******");

 $term = $_POST['term'];


$sql = mysql_query("select count(*) from car_orders where side='buy' and sales_id like '%$term%'");


while ($row = mysql_fetch_array($sql)){
 echo 'owner_id: '.$row['sales_id'];
echo '<br/> side '.$row['side'];
echo '<br/><br/>';
 }
?>

我试图找出如何让计数数字显示在页面上并且失败了。请有人帮忙

4

2 回答 2

2

你需要添加ALIAS

select count(*) AS totalCOUNT from car_orders where ....

你现在可以使用它来获得价值

$row['totalCOUNT']

但是在您的查询中看到,既不是sales_id也不side是预计的。下面的查询只是一个假设

select `sales_id`,`side`, count(*) AS totalCOUNT
from car_orders 
where side='buy' and 
      sales_id like '%$term%'
GROUP BY `sales_id`,`side`

现在您可以获取所有值,

$row['sales_id']
$row['side']
$row['totalCOUNT']

并且该查询很容易受到SQL Injection. 请花时间阅读下面的文章如何保护它,

于 2012-10-29T15:35:07.803 回答
2
  1. 您只选择了COUNT(*)列,没有别的。
  2. 您没有使用mysql_fetch_assoc(),因此它不是关联数组。
  3. 这些mysql_函数已弃用,请使用 mysqli 或 PDO。
于 2012-10-29T15:37:27.297 回答