3

PHP と MYSQL を使用して Web サイトを開発しています。ブログのカテゴリを追加するフォームを作成し、カテゴリのテーブルに保存しました。今、別の形式のブログのドロップダウン メニューでこれらのカテゴリにアクセスしたいと考えています。誰でも私の問題を解決できますか?

フォームのコードは次のとおりです。

 <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; 
}
4

2 に答える 2

2

あなたの $ans に含まれる値はわかりませんが、これが役立つかもしれません

<select name='topic_cat'>
   <?php foreach ( $ans as $a ) { ?>
      <option value="<?php echo $a['key']?>"> <?php echo $a['value']; ?> </option>
   <?php } ?>
</select>
于 2013-10-08T06:57:56.483 に答える
1

まず、ここの空白を削除する必要があります

<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);

于 2013-10-08T07:00:52.070 に答える