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>";

我需要foreach循环来返回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 回答