如何从表中执行计数,然后使用PHP显示计数值?
问题描述:
目前我有两张表A和B.DID是由用户输入到一个输入中,并且这是我的程序中的第一个提示,用于输入DID。如何从表中执行计数,然后使用PHP显示计数值?
A包含PID,DID和MaxOccupancy。 PID是专业ID,DID是部门ID。 B包含CID,DID和PID。 CID是客户端ID,DID和PID是相同的。
我将数据从第一个表格输出到一个显示所有数据的html表格中。
但是,我无法从表2中计算PID的数量。我已经$countB= mysql_query ("select count (PID) from B where DID=('$_POST[DID])");
我然后写
while($row = mysql_fetch_array($countB))
{
echo "Current occupancy:".$row['count(PID)'].;
}
有人能帮助我吗?我如何做一个在我的查询计数的地方,以获得用户在输入框中输入DID的内容?我完全错了吗?
THANkS!
答
尝试
$countB= mysql_query (sprintf("SELECT COUNT(PID) as total FROM B WHERE DID=('%s')",mysql_real_escape_string($_POST['DID'])));
$row = mysql_fetch_array($countB);
echo $row['total'] ;
注..总是筛选SQL注入
答
可以为COUNT
的结果,你可以在PHP访问创建别名:
mysql_query ("select count (PID) as PIDcount from B where DID=('$_POST[DID])");
// then reference it later
$row['PIDcount'];
查询中$_POST[DID]
的用法同样取决于SQL Injection。
'where DID =('$ _ POST [DID])'包含一个流浪的单引号。另外,请查看[mysql_real_escape_string](http://php.net/manual/en/function.mysql-real-escape-string.php)。 – Herbert 2012-04-25 00:21:43