Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php中从数据库填充的下拉列表中设置选定值_Php_Mysql - Fatal编程技术网

在php中从数据库填充的下拉列表中设置选定值

在php中从数据库填充的下拉列表中设置选定值,php,mysql,Php,Mysql,基本上,我正在处理一个学生数据库,有以下问题: 加载学生窗体时,它会将所有学生姓名加载到选择列表中。从那里,每当我从列表中选择一个学生时,我都会显示学生详细信息。下面是到目前为止我所拥有的,但是当我点击列表中的一个项目时,它只停留在一个名称上,或者-Select Student-选项上,但它确实显示了下面的学生信息 这是我到目前为止所拥有的 <form name="list_student" action="<?php echo htmlspecialchars($_SERVER["

基本上,我正在处理一个学生数据库,有以下问题: 加载学生窗体时,它会将所有学生姓名加载到选择列表中。从那里,每当我从列表中选择一个学生时,我都会显示学生详细信息。下面是到目前为止我所拥有的,但是当我点击列表中的一个项目时,它只停留在一个名称上,或者-Select Student-选项上,但它确实显示了下面的学生信息

这是我到目前为止所拥有的

<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容器下拉列表下方所选学生的名字、姓氏、地址等。