dongsao8279 2013-06-15 08:45
浏览 63
已采纳

PHP - 而/ Else错误? [关闭]

I have the following php code:

<?php




if (!isset($_REQUEST['search'])){

    while(($write=mysql_fetch_array($gamesearched)) != null){
    echo "Found!";
    }else{
    echo "No results";
    }

    }
?>

And it's giving me an error:

Parse error: syntax error, unexpected 'else' (T_ELSE) in C:\php\www\Gameplay\backgame.php on line 41

  • 写回答

5条回答 默认 最新

  • dongzi3434 2013-06-15 09:24
    关注

    In PHP, a while statement can't have an else clause. You need something external to the while that can tell you if it was executed at least once.

    How about something like this?

    $total = mysql_num_rows($gamesearched);
    if ($total > 0) {
        while (($write=mysql_fetch_array($gamesearched)) !== false) {
            echo "Found!";
        }
    } else {
        echo "No results";
    }
    

    In this case, I've looked up the total number of rows found before I start, but I could also have started by setting a counter to zero and then incrementing it inside the while loop. That would look something like this:

    $total = 0;
    while (($write=mysql_fetch_array($gamesearched)) !== false) {
        $total++;
        echo "Found!";
    }
    if ($total == 0) {
        echo "No results";
    }
    

    Note that mysql_fetch_array() returns false if there are no more rows, so I've updated the while condition for you as well.

    All that being said, there are good reasons not to use mysql_* functions in new code. See this question for more details, and some better alternatives: Why shouldn't I use mysql_* functions in PHP?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥50 求解vmware的网络模式问题 别拿AI回答
  • ¥24 EFS加密后,在同一台电脑解密出错,证书界面找不到对应指纹的证书,未备份证书,求在原电脑解密的方法,可行即采纳
  • ¥15 springboot 3.0 实现Security 6.x版本集成
  • ¥15 PHP-8.1 镜像无法用dockerfile里的CMD命令启动 只能进入容器启动,如何解决?(操作系统-ubuntu)
  • ¥30 请帮我解决一下下面六个代码
  • ¥15 关于资源监视工具的e-care有知道的嘛
  • ¥35 MIMO天线稀疏阵列排布问题
  • ¥60 用visual studio编写程序,利用间接平差求解水准网
  • ¥15 Llama如何调用shell或者Python
  • ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?