2017-02-27 22 views
-1

私は問題があります、私はデータベースからデータを数える関数を作成したいと思います。しかし、私は列からそれがすべての行ではなく、いくつかのIDを数えたいと思っています。PHPはいくつかの行を数えます

動作しません。私のコード:

function countMember() { 
    include("./config/config.php"); 
    $fetch_countMember = $fetch_countMember->prepare("SELECT * FROM `accounts`"); 
    $fetch_countMember->execute(); 
    while($fetch_countMember= $fetch_countMember->fetch()) { 
    if($fetch_countMember["member"] == 5 || $fetch_countMember["member"] == 6 || $fetch_countMember["member"] == 12 || $fetch_countMember["member"] == 13 || $fetch_countMember["member"] == 14 || $fetch_countMember["member"] == 15 || $fetch_countMember["member"] == 16 || $fetch_countMember["member"] == 17 || $fetch_countMember["member"] == 20 || $fetch_countMember["member"] == 21) 
     $c_member++; 
    } 
    return $c_member; 
} 
+1

あなたがエラーを持っていますか?カウント部分については、クエリーを次のように変更することができれば最適です。SELECT * FROM 'accounts' WHERE member IN(...) –

答えて

1

あなたはそれを行うにはPDO::exec()

エレガントな方法を使用する必要があります。

$pdo = new PDO(....); 
$ids = [5,6,12,13,14,15,16,17,20,21]; 
$query = sprintf("SELECT * FROM accounts WHERE member IN (%s)", implode($ids, ',')); 
$count = $pdo->exec(); 
echo $count; 
+0

ありがとうございます:) – ToExeCute

+0

@ToExeCuteよろしくお願いします! –

関連する問題