在php中从数据库填充的下拉列表中设置选定值
基本上,我正在处理一个学生数据库,有以下问题: 加载学生窗体时,它会将所有学生姓名加载到选择列表中。从那里,每当我从列表中选择一个学生时,我都会显示学生详细信息。下面是到目前为止我所拥有的,但是当我点击列表中的一个项目时,它只停留在一个名称上,或者-Select Student-选项上,但它确实显示了下面的学生信息 这是我到目前为止所拥有的在php中从数据库填充的下拉列表中设置选定值,php,mysql,Php,Mysql,基本上,我正在处理一个学生数据库,有以下问题: 加载学生窗体时,它会将所有学生姓名加载到选择列表中。从那里,每当我从列表中选择一个学生时,我都会显示学生详细信息。下面是到目前为止我所拥有的,但是当我点击列表中的一个项目时,它只停留在一个名称上,或者-Select Student-选项上,但它确实显示了下面的学生信息 这是我到目前为止所拥有的 <form name="list_student" action="<?php echo htmlspecialchars($_SERVER["
<form name="list_student" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="post">
<p><select name="names[]">
<option>--- Select Student ---</option>
<?php $students = list_students();
foreach ($students as $student){
echo '<option value="'.$student['studentID'].'" onclick="document.forms.list_student.submit()"> '.$student['firstName'].'</option>';
}
?>
</select>
</form>
<?php
if ($_SERVER['REQUEST_METHOD']==='POST') {
foreach($_POST['names'] as $selectedOption){
$student = get_student($selectedOption);
echo "Student Name : ".$student['firstName']." ".$student['lastName']."<br />";
echo "Address : ".$student['address']."<br />";
echo "Telephone : ".$student['telephone']."<br />";
echo "E-mail Address : ".$student['email']."<br />";
echo $student['studentID'];
}
}
?>
我真的希望有人能帮我。
谢谢。您应该在选择上尝试onchange事件,而不是在每个选项上尝试onclick事件。我假设选择框不是多下拉框。对代码进行以下更改:
echo '<option' .$_POST[names][0] ==$student['studentID']? 'selected': ''. ' value="'.$student['studentID'].'" onclick="document.forms.list_student.submit()"> '.$student['firstName'].'</option>'
您只需要将所选属性添加到所选选项。请注意,我的代码可能不会像我在代码中假设的那样为您运行,但您仍然可以知道您需要什么。那么您的问题是什么?我需要在下拉列表中显示我所做的任何选择,而不是每次从列表中选择项目时跳转到默认选项。问题是我需要显示学生信息,例如div容器下拉列表下方所选学生的名字、姓氏、地址等。