うまく編集できるドロップダウンメニューがあります。
// Connect to Local Host
@ $db=mysqli_connect('localhost', 'root');
if (!$db) { do_Warning(-1); exit; }
// Connect to Database
@ mysqli_select_db($db,'coshh');
echo '<tr><td>Harmful effects:</td>
<td><select name="Harmful_effects"><option></option>';
/* Create SQL to extract effects options */
$sql = "SELECT * FROM `lookup_harmful_to_reproductive_system` ORDER BY `id`";
/* Perform SQL to get effects options */
$result = mysqli_query($db, $sql);
/* Build dropdown list for each effects option found in result */
while ($row=mysqli_fetch_array($result,MYSQLI_BOTH))
{
echo '<OPTION value="'.$row['Harmful_effects'].'"';
if ($Harmful_effects == $row['Harmful_effects'])
{
echo ' selected';
}
echo '>'.$row['Harmful_effects'].'</OPTION>';
}
echo '</select></select></td>';
ただし、複数オプションのドロップダウン メニューに変更するように依頼されました。これを行ったところ、MySQL データベースに複数のオプションが挿入されました。私が遭遇した大きな問題は、この複数のドロップダウン メニューを編集しようとすると、データベースから以前に選択/入力されたデータが強調表示されないことです。私は始めましたが、それを理解するのに本当に苦労しています。
echo '<tr><td>Harmful effects:</td>
<td><select name="Harmful_effects[]" multiple="multiple" STYLE="width: 500px" size="0"><option></option>';
/* Create SQL to extract effects options */
$sql = "SELECT * FROM `lookup_harmful_to_reproductive_system` ORDER BY `id`";
/* Perform SQL to get effects options */
$result = mysqli_query($db, $sql);
/* Build dropdown list for each effects option found in result */
while ($row=mysqli_fetch_array($result,MYSQLI_BOTH))
{
echo '<OPTION value="'.$row['Harmful_effects'].'"';
if ($Harmful_effects == $row['Harmful_effects'])
{
echo ' selected';
} echo '>'.$row['Harmful_effects'].'</OPTION>';
} echo '</select></select></td>';
どんな提案/助けも大歓迎です!