1

ユーザーが場所を選択できるドロップダウンメニューがあります。これらは保存された設定であるため、ユーザーがこれらの設定を編集したい場合は、以前に保存した値をリストに入力したいと思います。

場所とその ID は、locations という名前のテーブルから選択されますが、場所のみが userinfo という名前のテーブルに保存されます。IDが最初の選択プロセスで使用されることを考慮して、選択リストを再度作成する方法がわかりません。

これは、単にローションを選択するために私が今持っているものです. これに、以前に保存した場所を入力したいと思います。これはより大きなフォームの一部であるため、フォーム タグはありません。

<?
$sql = mysql_query("select locationsid,locationsName from locations"); 
$selection="";
while ($row=mysql_fetch_array($sql)){ 
   $id=$row["locationsid"]; 
   $locationName = $row["locationsName"]; 
   $selection.="<OPTION VALUE=\"$id\">".$locationName; 
}
?>
<!--select location - used for reach location -->
<h4>Nearest Location</h4>
<table>
<tr><td>Location:</td><td><select name ="location"><Option value="<? echo selection2; ?>">Choose Location<? echo $selection; ?></Select></td>
</table>

データベースにクエリを実行して保存された場所 (userinfo テーブル内) を取得し、その場所の ID を場所テーブルから検索する必要があると想定しています。ここから、これを値選択フィールドに入力する方法がよくわかりません。

$locationLookup = mysql_query("select location from userinfo where userid = $userid");
$locationLookup = mysql_fetch_array($locationLookup);
$location = $locationLookup['location'];
$idlookup = mysql_query("select locationsID from locations where locationsName = '$location'");
$idlookup = mysql_fetch_array($locationid);
$idlookup = $locationid['locationsID'];

これで名前と ID が得られますが、これを選択リストの値として設定するにはどうすればよいでしょうか?

4

1 に答える 1

1

あなたが得た後$idlookup

$idlookup = $locationid['locationsID'];

whileループ内で使用します:

while ($row=mysql_fetch_array($sql)){ 
   $id=$row["locationsid"]; 
   $locationName = $row["locationsName"]; 
   $selected = ($id == $idlookup) ? 'selected="selected"' : '';
   $selection.="<OPTION " . $selected . " VALUE=\"$id\">".$locationName."</OPTION>";
}
于 2012-05-30T02:18:02.357 に答える