0

こんにちは私はデータベースからの名前のリストを含むこのhtmlフォームを持っています。

$stmt = $db->query("SELECT id_person, surname, firstname FROM persons ORDER BY surname,firstname");

$selected_persons= array(); 

echo "<select name='persons[]' multiple='multiple' size='7'>";
  while ($result = $stmt->fetch()) { 
     echo "<option value='".$result['id_person']."'";

     if (in_array($result['id_person'], $selected_persons)) {
        echo " selected='selected'";
     }

    echo ">".$result['surname']." ".$result['firstname']."</option>";

id_person選択した人が戻る各サイクルが必要です

4

2 に答える 2

0

コンボは多次元配列、つまり $_POST['persons'][] になるため、次のコードを使用して選択した値を取得します。

foreach($_POST['persons'][] AS $selected_person)
{
    echo $selected_person;
}
于 2013-01-08T18:07:33.650 に答える
0

選択した人物は$_POST['persons'](フォームのメソッドが であると仮定してPOST) に表示されるため、foreach を使用してそれらを反復処理できます。

foreach($_POST['persons'] as $id_person)
{
    echo 'selected: ' . htmlspecialchars($id_person);
}
于 2013-01-08T14:26:32.570 に答える