所以我使用while语句验证了空值,代码是
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();
?>
我尝试使用“如果”我没有得到任何错误,虽然它没有打印出我想要打印的内容
答案 0 :(得分:12)
虽然在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();
答案 1 :(得分:0)
while (!$rs->EOF){
表示“继续执行此操作,直到$rs->EOF
为true
”。当它结束时,$rs-EOF
将永远为真(否则循环不会结束),因此条件永远不会通过。
您需要在某个时间点(可能在 while
循环之前)进行测试,以查看是否找到了任何结果。如果不知道你正在使用什么库,就不可能说如何做到这一点。
答案 2 :(得分:0)
在尝试循环之前,您应该检查结果集是否为空。
E.g。像这样的伪代码:
rs = sql("SELECT ...");
if (rs.isEmpty())
print "No data";
else
{
while (!rs.EOF())
{
...
}
}
答案 3 :(得分:-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();
?>