php while语句导致500错误

时间:2012-01-14 04:54:38

标签: php

我完全被这里难住了。我已经编写了下面的代码,当我查看页面时出现500错误。通过逐个注释选择行的过程,我能够发现while语句导致错误......有人能告诉我我的代码可能有什么问题吗?

<?php 
                $rQuery = "SELECT * FROM roles ORDER BY roleName ASC";
                $rResult = mysql_query($rQuery);

                if (!$rResult){
                    echo 'Query Error <br>' . $rQuery;
                    exit;
                }

            ?>
            <p>
                <select name="roleaddid" id="roleaddid" >

                  <?php while ($roles = mysql_fetch_array($rResult)){ ?>

                    <option value="<?php echo $roles['roleId'] ?>"><?php echo $roles['roleName'] ?></option>

                    <? } // end while ?>

                </select>

            </p>

感谢您的任何见解......

3 个答案:

答案 0 :(得分:3)

您需要修复结束括号周围的<? ?>

更改为<?php ?>

答案 1 :(得分:0)

donutdan肯定会得到答案,你需要启用短标签....如果你使用短标签如此:<? echo $blank ?>你仍然应该用半冒号结束你的回声,更好的是,打电话给以这种方式变化

<?=$variable?>

这样你就不必像每次那样回应......

答案 2 :(得分:0)

<?php 

            //add your mysql connect
            $rQuery = "SELECT * FROM roles ORDER BY roleName ASC";
            $rResult = mysql_query($rQuery);

            if (!$rResult){
                echo 'Query Error <br>' . $rQuery;
                exit;
            }

        ?>
        <p>
            <select name="roleaddid" id="roleaddid" >

              <?php while ($roles = mysql_fetch_array($rResult)){ ?>

                <option value="<?php echo $roles['roleId'] ?>"><?php echo $roles['roleName'] ?></option>

                <?php } // end while ?>

            </select>

        </p>