0

最初の 3 つのクエリは正常に機能していますが、最後のクエリは機能していません。2番目のクエリは問題なく動作していますが$status !== '' 、最後のクエリは同じ$status !== '' ですが、クエリを実行していません。

if (isset($_POST['go'])) {

     $status = $_POST[status];
     if ($status == 4){
             $status = '' ;
     }

    if ($topic == 100 && $subtopic == '' && $status == '' ) {
    $queryString = "select * from tblquiz where userid='$_SESSION[numericuserid]' LIMIT $start, $limit" ;
    $countString = "select * from tblquiz where userid='$_SESSION[numericuserid]'";
    }  // NOTE : THIS QUERY IS WORKING PERFECT

       elseif ($topic !== '' && $subtopic !== '' && $status !== '' ) {
    $queryString = "select * from tblquiz where qstatus=$status AND  qtopic='$topic[topicname]' AND subtopic='$_POST[subtopic]' AND userid='$_SESSION[numericuserid]' LIMIT $start, $limit" ;
    $countString = "select * from tblquiz where qstatus=$status AND  qtopic='$topic[topicname]' AND subtopic='$_POST[subtopic]' AND      userid='$_SESSION[numericuserid]'";
       }  // NOTE : THIS QUERY IS WORKING PERFECT

       elseif ($topic !== '' && $subtopic !== '' && $status == '' ) {
    $queryString = "select * from tblquiz where   qtopic='$topic[topicname]' AND subtopic='$_POST[subtopic]' AND userid='$_SESSION[numericuserid]' LIMIT $start, $limit" ;
    $countString = "select * from tblquiz where   qtopic='$topic[topicname]' AND subtopic='$_POST[subtopic]' AND userid='$_SESSION[numericuserid]'";
       }  // NOTE : THIS QUERY IS WORKING PERFECT


       elseif  ($topic == 100 && $subtopic == '' && $status !== '') {
    $queryString = "select * from tblquiz where qstatus= $status AND userid='$_SESSION[numericuserid]' LIMIT $start, $limit" ;
    $countString = "select * from tblquiz where qstatus= $status AND userid='$_SESSION[numericuserid]' ";
     }  **// NOTE : THIS QUERY IS NOT WORKING** 

}
4

2 に答える 2

0
select * from tblquiz where qstatus= '$status' 

qstatus欠落している引用符?

于 2012-09-01T02:23:08.790 に答える
0

あなたのelseif-clauseで、$statusが空であることを確認し、空である場合は$querystringと$countstringを設定します。これは、クエリを実行しようとしていることを意味します

qstatus= AND

これにより、SQL エラーが生成されたはずです。デバッグしようとするときは、常に SQL ステートメントを出力することをお勧めします。

于 2012-09-01T02:27:09.063 に答える