0

重複の可能性:
PHP-PRE-selectドロップダウンオプション

私のphpプロジェクトで、ユーザーが自分のアカウントを編集できる状況があります。

編集では、都市のドロップダウンリストである都市フィールドがあります。

編集前にプロフィールにある都市(登録時にユーザーが入力した都市)をすでに1つ選択したい。

また、彼はフロンドロップダウンリストを選択することで自分の都市を変更することができます。

HTMLコード:

<div class="search_bar1_txt">State:</div>
<div class="search_bar1">
<select class="styled" name="state_trainer">
 <option>-select-</option>
 <option>washington</option>
 <option>perth</option>
 <option>delhi</option>
 <option>london</option>
 </select></div>
</div>

編集時に、このコードを使用してユーザーの現在のデータ(都市)をフェッチしています:

<?php
if(isset($_GET['userid']))
{
$sql = "select city from `wp_pelleresuser` where userId =".$_GET['userid'];
$result = mysql_query($sql);
$value = mysql_fetch_assoc($result);
}?>

データベースからフェッチする1つのオプションをすでに選択するにはどうすればよいか教えてください。

また、変更可能です。

4

5 に答える 5

2
<div class="search_bar1_txt">State:</div>
 <div class="search_bar1">
  <select class="styled" name="state_trainer">
   <option <?if($value['city']=='-select-') echo "selected";?>>-select-</option>
   <option <?if($value['city']=='washington') echo "selected";?>>washington</option>
   <option <?if($value['city']=='perth') echo "selected";?>>perth</option>
   <option <?if($value['city']=='delhi') echo "selected";?>>delhi</option>
   <option <?if($value['city']=='london') echo "selected";?>>london</option>
  </select>
 </div>
</div>
于 2012-08-22T09:34:37.333 に答える
1

明確な方法かどうかはわかりませんが、次のようにすべてのオプションセル内にコードを入れることができます:

<option <?php if($value['city'] == "washington") echo "selected=selected"; ?> >washington</option>
于 2012-08-22T08:12:28.290 に答える
1

いくつかの方法でそれを行うことができますが、最も単純な (そしておそらく最も洗練されていない) 方法は、次のようにすることです。

<select class="styled" name="state_trainer">
<?php
$myCity='london'; // assumed to be data from database...
echo '<option'.($myCity=='-select-') ? ' selected ' : ' ' .'-select-</option>';
echo '<option'.($myCity=='washington') ? ' selected ' : ' ' .'washington</option>';
?>

これはもちろん恐ろしいことです。

データベースから情報を引き出し、最初のドロップダウン リストをまとめるときに、データを確認することをお勧めします。

たとえば、ドロップダウンリストを作成するためにデータの配列を作成している場合は、すぐにチェックしてください。都市があなたが望むものと一致する場合は、すぐにループ内で実行してください。

$usersCity="london";
$myCityList=array();

while( ... ) // Database loop that is pulling the data from the database.
{
    $selected='';
    if($userCity==$row['city'])
    {
        $selected=' selected ';
    }
    $myCityList[]='<option'.$selected.'>'.$row['city'].'</option>';
}

ドロップダウン リストを表示するには、次のようにします。

$cityCount=count($myCityList);
for($i=0;$i<$cityCount;$i++)
{
    echo $myCityList[$i].'\n';
}

ユーザーの都市はすでに選択されています。

于 2012-08-22T08:14:47.373 に答える
1

このようにして、あなたが望むものを得ることができます。また、データベースのやり取りには mysqli 関数を使用することをお勧めします。

<option
<?php if ($value['city'] == delhi)
          {
                                echo "selected = true"; 

          }  ?> 
 >delhi
</option>
于 2012-08-22T08:26:03.447 に答える
0

選択した値をdbのように入力するだけです

$choosen = $some value form db

$options = array(1 => 'data1', 2 => 'data2', 3 => 'data3'); foreach ($options as $key => $value) { echo '' . $値。''; }

php.Iで選択ボックスを取得するには、理解してください。私にとってはうまくいきます

于 2012-08-22T10:50:19.117 に答える