-1

私は自分の状態にテーブルを使用しており、戻り値をDB内のすでにレコーダーであったものと一致させるのに時間がかかっています。オプションリストを作成するために以下を使用しています:

              <label class="label" for="state"><em>State</em></label>
          <select class="select" maxlength="30" id="" name="state" ><option>
              <?php 
              $options = "";
               while ($row = mysql_fetch_array($resultstate))
                        {
                        $name=$row["name"];
                        $abbrev=$row["abbrev"]; 
                        $options.="<OPTION VALUE=\"$abbrev\">".$name;
                        } 
              echo $options;


             </option></select></div>

状態の配列をループしたり、DB 内の状態を選択済みとしてタグ付けしたりするにはどうすればよいですか? 両方を別々に行うことはできますが、一緒にすることはできません...

どんな助けでも大歓迎です

いくつかの調整を加えて:

      while ($row = mysql_fetch_array($resultstate))
                        {
                            $name = $row["name"];
                            $abbrev = $row["abbrev"]; 
                                if($state == $abbrev){
                                    echo '<OPTION VALUE="'.$abbrev.'" selected="selected">'. $name.' </OPTION>';
                                    } else {
                            echo ' <OPTION VALUE="'.$abbrev.'"> '.$name.' </OPTION>';
                                    }

                        }

正しく動作します。正しい方向に向けてくれてありがとう

4

1 に答える 1

1

出力に問題がある場合...私はあなたが何に問題を抱えているのかよくわかりませんか?

<label class="label" for="state"><em>State</em></label>
      <select class="select" maxlength="30" id="" name="state" ><option>
          <?php 
          $options = "";
           while ($row = mysql_fetch_array($resultstate))
                    {
                    $name=$row["name"];
                    $abbrev=$row["abbrev"]; 
                    $options.="<OPTION VALUE=\"$abbrev\";
                    if($somevaluefromDb==$name){echo 'selected="selected"';}
                     echo ">".$name."</OPTION>";
                    } 
          echo $options;


         </select></div>
于 2012-12-07T17:33:13.420 に答える