php, mysql, "Else 在 while 语句之后

Posted

技术标签:

【中文标题】php, mysql, "Else 在 while 语句之后【英文标题】:php, mysql, "Else after while statement 【发布时间】:2012-10-09 06:05:08 【问题描述】:

我怎样才能写一个条件,如果没有找到该行然后做某事?

我的代码

$resultt = mysql_query("SELECT * FROM objednavky WHERE kdo = '$kdo' and kdy = '$the_rday'");
                        while ($roww = mysql_fetch_array($resultt)) 

                            echo "<form method='post' action=''>
                                  <label for='obb1'>Menu #1&emsp;</label>
                                  <input type='text' name='obb1' value='$roww[3]' size='4'><br>
                                  <label for='obb1'>Menu #2&emsp;</label>
                                  <input type='text' name='obb2' value='' size='4'><br>
                                  <label for='obb1'>Menu #3&emsp;</label>
                                  <input type='text' name='obb3' value='' size='4'><br>
                                  <input type='submit' value='objednat'></form>";


                        

我想继续这样下去

   ... else 
echo " no match ";

非常感谢您的帮助。

【问题讨论】:

由于你使用的是 mysql_ 扩展,你可以使用mysql_num_rows() 【参考方案1】:

这可以通过mysql_num_rows()完成

 if($resultt && mysql_num_rows($resultt)>1)


             while ($roww = mysql_fetch_array($resultt)) 

                        echo "<form method='post' action=''>
                              <label for='obb1'>Menu #1&emsp;</label>
                              <input type='text' name='obb1' value='$roww[3]' size='4'><br>
                              <label for='obb1'>Menu #2&emsp;</label>
                              <input type='text' name='obb2' value='' size='4'><br>
                              <label for='obb1'>Menu #3&emsp;</label>
                              <input type='text' name='obb3' value='' size='4'><br>
                              <input type='submit' value='objednat'></form>";


                      else 
                         echo " no match ";
                       

但不推荐使用mysql_* 函数,因此请改用pdomysqli

【讨论】:

【参考方案2】:

在这种情况下你可以使用mysql_num_rows()

$resultt = mysql_query("SELECT * FROM objednavky WHERE kdo = '$kdo' and kdy = '$the_rday'");


   if(mysql_num_rows($resultt)<1)
   echo "not found";
   else

     while(...)

       

【讨论】:

以上是关于php, mysql, "Else 在 while 语句之后的主要内容,如果未能解决你的问题,请参考以下文章

php连接数据库mysql测试脚本

php合并单元格

PHP搜索怎么做成商城那样的!

PHP判断SQL数据

PHP function 里 怎么调用外部定义过的变量

简单php-mysql注入检测