0

目前我有两个表A和B。DID由用户输入到一个输入中,这是我程序中的第一个提示,输入DID。

A 包含 PID、DID 和 MaxOccupancy。PID 是专业 id,DID 是部门 id。B 包含 CID、DID 和 PID。CID 为客户端 ID,DID 和 PID 相同。

我正在将第一个表中的数据输出到一个显示所有数据的 html 表中。

但是,我无法计算表二中的 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 输入的内容?我做错了吗?

谢谢!

4

2 回答 2

1

尝试

$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 注入

于 2012-04-25T00:16:35.450 回答
0

COUNT您可以为可以在 PHP 中访问的结果创建别名:

mysql_query ("select count (PID) as PIDcount from B where DID=('$_POST[DID])");
// then reference it later
$row['PIDcount'];

查询中的使用$_POST[DID]也受SQL 注入的影响。

于 2012-04-25T00:16:39.523 回答