-1

ページまたはドロップダウンリストに選択オプションがあります。問題は、選択オプションに値を設定する方法です。この値はデータベースからのものです。

これが私のコードです。

  <select name="status" value="<?php echo $status; ?>" >

    <option value=""></option>
    <option value="public">public</option>
    <option value="private">private</option>
  </select>

私のhtmlタグの上に

   if(isset($_GET['status']))
    {
         $status = $_GET['status'];
     $sstatus="select .......";


   foreach($db->query($sstatus) as $rows)
    {
      $status= $rows['status'];
      ......
              ......
              ......
         }
   }

コードを変更しようとしましたが、機能しているようですが、問題は、ドロップダウンリストに同じ値が2つあることです。

   <select name="status" >

    <option selected="selected"><?php echo $status; ?></option>
    <option value="public">public</option>
    <option value="private">private</option>
  </select>

ドロップダウンリストにこのように表示されます。これに対する私の質問は、データベースから取得した値を表示する正しい方法です。

パブリック
パブリック
プライベート

4

2 に答える 2

1
<select name="status" >
    <option value=""></option>
    <option value="public"<?php if (isset($status) && $status === 'public') echo 'selected'; ?>>public</option>
    <option value="private"<?php if (isset($status) && $status === 'private') echo 'selected'; ?>>private</option>
 </select>
于 2012-05-17T13:51:04.230 に答える
1
<?php $options = array('', 'public', 'private') ?>

<select name="status">
<?php foreach ($options as $option): ?>
   <option value="<?php echo $option ?>" <?php echo isset($status) && $status == $option ? 'selected="selected"' : '' ?>><?php echo $option ?></option>
<?php endforeach ?>

</select>
于 2012-05-17T13:54:17.620 に答える