11

したがって、コードはwhileステートメントを使用してnull値で検証しています

while (!$rs->EOF){ 
    echo "<tr><td>".$rs->Fields("Branch")."</td>";
    $rs->movenext();
}
$rs->Close();   

?>

私が達成したかったのは、「else」ステートメントを使用することですが、where ステートメントを使用できないことはわかっています。whereステートメントでどれがそれに相当しますか?

while (!$rs->EOF){ 
    echo "<tr><td>".$rs->Fields("Branch")."</td>";
    $rs->movenext();
}
if(!$rs->EOF)
{
    echo "<tr><td> Branch is missing</td>";
}
$rs->Close();   

?>

「if」を使ってみた 印刷したいものは印刷されませんでしたが、エラーは発生しませんでした

4

5 に答える 5

15

while-else は php には存在しません。

あなたが使用することができます:

if ($rs->EOF) {
    echo "<tr><td> Branch is missing</td>";
} else {
    while (!$rs->EOF){ 
        echo "<tr><td>".$rs->Fields("Branch")."</td>";
        $rs->movenext();
    }
}
$rs->Close(); 
于 2013-02-19T07:13:17.710 に答える
0

while (!$rs->EOF){ 「までこれをやり続ける」という意味$rs->EOFですtrue。終了すると、$rs-EOF常に true になります (そうでない場合、ループは終了しません)。そのため、条件は決して通過しません。

結果が見つかるかどうかを確認するために、ある時点 (おそらくループの前) でテストを行う必要がありますwhile使用しているライブラリを知らなければ、これを行う方法を言うことは不可能です。

于 2013-02-19T07:12:00.127 に答える
-1

以下のコードがあなたを助けると思います、

<?php while (!$rs->EOF){ 

     if($rs->Fields("Branch"))
     {
      echo "<tr><td>".$rs->Fields("Branch")."</td>";
     $rs->movenext();
     }else{
      echo "<tr><td> Branch is missing</td>";
     }
}

$rs->Close();   

?>
于 2013-02-19T07:18:22.813 に答える
-1

結果セットをループする前に、結果セットが空でないことを確認する必要があります。

たとえば、次の擬似コードのようなもの:

rs = sql("SELECT ...");

if (rs.isEmpty())
    print "No data";
else
{
    while (!rs.EOF())
    {
        ...
    }
}
于 2013-02-19T07:13:39.503 に答える