在SELECT里面循环

时间:2014-03-14 10:06:27

标签: php html forms select while-loop

我是php和html的新手,所以我需要一些问题的帮助:我正在尝试制作一个可以从dropbox中选择的表单,但是应该从sql数据库中检索来自dropbox的数据。 如果我将代码保存为php,则创建dropbox并从sql中检索数据,但随后提交按钮(以及我在while循环之后放置的所有其他内容)将消失。如果我将其保存为html文件,则表单和提交按钮可以正常工作,但它不会从sql数据库中检索任何数据。

由于

<form action="Techniques.php" method="post">
        <p>Which Disease?
        <select name="disease" >
            <option value="" >--Select--</option>
        <?php
          require_once("dbconnect.php");

          $sql = "SELECT * FROM diseases";
          $result = mysql_query($sql)or die (mysql_error());
                while($row = mysql_fetch_array($result) or die (mysql_error()))
                {
        ?>
                 <option value ="<?php echo($row['Disease']);?>"><?php echo($row['Disease']);?></option>
        <?php
                }
        ?>        

        </select>
        </p>
        <input type="submit" value="Copmlete"/>
    </form>

3 个答案:

答案 0 :(得分:1)

你的

    </select>
  </p>
  input type="submit" value="Copmlete"/>
</form>

必须是

    </select>
  </p>
  <input type="submit" value="Complete"/>
</form>

最佳编码:

<?php
   require_once("dbconnect.php");
   $sql = "SELECT * FROM diseases";
   $result = mysql_query($sql)or die (mysql_error());
?>
<form action="Techniques.php" method="post">
  <p>Which Disease?
    <select name="disease" >
      <option value="" >--Select--</option>
      <?php
        while($row = mysql_fetch_array($result) or die (mysql_error()))
        {
      ?>
      <option value="disease" ><?php echo($row['Disease']);?></option>
      <?php
        }
      ?>        
    </select>
  </p>
  <input type="submit" value="Copmlete"/>
</form>

答案 1 :(得分:1)

尝试

<form action="Techniques.php" method="post">
  <p>Which Disease?
    <select name="disease" >
      <option value="" >--Select--</option>
      <?php
        require_once("dbconnect.php");

        $sql = "SELECT * FROM diseases";
        $result = mysql_query($sql)or die (mysql_error());
          while($row = mysql_fetch_array($result) or die (mysql_error()))
          {
      ?>
        <option value="<?php echo($row['Disease']);?>" ><?php echo($row['Disease']);?></option>

      <?php } ?>        

      </select>
    </p>
    <input type="submit" value="Complete"/>
</form>

答案 2 :(得分:0)

如果将文件另存为.html文件,则不会执行PHP代码。

您在许多网站上看到的包含PHP的文件的.html扩展名是通过URL重写获得的。