php / mysql计算与条件匹配的项目数

时间:2016-04-06 17:16:57

标签: php mysql

所以我有一个数据库记录参加会议的人数。 表格设置如下:

name | status
 ----+---------
 Joe | No
 Jon | Yes
Mike | Yes

我要做的是计算状态的次数"是"然后将其输出到屏幕。

$yes_attending = 'SELECT status FROM attendees WHERE "status=Yes"';
$yes_result= $link->query($yes_attending);
    if($yes_result=mysqli_query($link,$yes_attending))
    {
        $yesCount = mysqli_num_rows($yes_result);
    } else{
        echo '0';
    }

我的问题是这个代码返回0,即使我确实在数据库中有与#34;是"相匹配的信息。条件。

3 个答案:

答案 0 :(得分:1)

你似乎误解了mysqli_query()的作用,如果它被执行了,它就会返回。

$sql = "SELECT status FROM attendees WHERE status='Yes'";

if($rsl = mysqli_query($link,$sql) != false){
    echo 'Query successfully executed';
    if($c = mysqli_num_rows($rsl) > 0){
      echo "The amount of results: '$c'";
    } else {
      echo "There are no attendees that have an active status";
    }
} else {
    printf("Query failed: %s\n", mysqli_error($link));
}

另外,为什么要求选择状态? 我问,因为结果将是'是'。

答案 1 :(得分:0)

摆脱status=YES

周围的引号

现在你的mysql语句无效。

答案 2 :(得分:0)

你正在使你的条件成为一个文字文本,所以错误。将其更改为

$yes_attending = "SELECT status FROM attendees WHERE status='Yes'";