如何在PHP的下拉菜单中访问MYSQL数据库中的值

时间:2013-10-08 06:54:09

标签: php mysql

我正在使用PHP和MYSQL开发一个网站。 我做了一个表格来为博客添加类别并将其存储在类别表中。 现在我想在另一种形式的博客下拉菜单中访问这些类别。谁能解决我的问题?

以下是表格代码:

 <html>

  <head>
     <title>Create a Blog!</title>
  </head>

 <body>
 <?php
    include_once ('BlogClass.php');
    $j = new Blog();
    $ans = array();
    $ans = $j->DisplayCategories();
 ?>

   <form name="BlogTopic" action="BlogTopicProcess.php" method="post" onSubmit="return validateForm()">
  topic_cat :
      <select name="topic_cat">
         <?php
             for ( $i = 0; $i < count( $ans ); $i++ ) {
         ?>
         <option value="<?php echo($ans[$i]['Category']);?>"><?php echo($ans[$i]   ['Category']);?></option>
         <? php 
             }
         ?>
      </select>
      <label><strong>topic_id:</strong></label>
      <input name="topic_id" type="text"/><br>         
      <label><strong>topic_subject:</strong></label>
      <input name="topic_subject" type="text"/><br>

      <label><strong>topic_date:</strong></label>
      <input name="topic_date" type="text"/><br>

      <label><strong>topic_by:</strong></label>
      <input name="topic_by" type="text"/><br>

      <input type="checkbox" name="terms" />
      I agree to the <a href="#">terms &amp; conditions</a>  <br>                    
      <input type="submit" value="Create Topic" /><br>
 </form>     

 </body>
</html>

函数DisplayCategory()

public function DisplayCategory() { 
    $connection=$this->Con->connectDb(); 
    $data=array(); 
    $sql="select * from categories"; 
    $query=mysql_query($sql); 
    $numrows=mysql_num_rows($query); 
    if ($numrows!=0) { 
        while ($a=mysql_fetch_array($query)) 
            $data[]=$a; 
    } 
    mysql_close($connection); 
    return $data; 
}

2 个答案:

答案 0 :(得分:2)

我不知道你的$ ans包含哪些值,但这可能对你有帮助

<select name='topic_cat'>
   <?php foreach ( $ans as $a ) { ?>
      <option value="<?php echo $a['key']?>"> <?php echo $a['value']; ?> </option>
   <?php } ?>
</select>

答案 1 :(得分:1)

Firstable你必须删除这里的空白

<option value="<?php echo($ans[$i]['Category']);?>"><?php echo($ans[$i]   ['Category']);?></option>

<option value="<?php echo($ans[$i]['Category']);?>"><?php echo($ans[$i]['Category']);?></option>

如果不起作用,那么必须检查方法DisplayCategories()返回什么类型并以女巫格式。 请将此方法的代码发送给我们

使用此$data[]=$a;

替换代码array_push($data,$a);