在选择组合框值时,必须在从数据库中选择查询后动态显示标签

时间:2014-12-11 10:36:18

标签: php mysql

在写入代码的文件中填充了组合框的值:

<select id="company" required="required" class="form-control" value = "select"    name="subject_code" placeholder="Select" >
   <?php
     //Iterating list of subjects available to be filled .
    echo "<option> Select </option>";
     foreach ($subjects_to_fill as $subject_id => $subject_name) {
          # code...                             
             echo "<option value=".$subject_id."> ".$subject_name." </option>";

      }                                              
     ?>
</select> 

在从组合框中选择特定项目时,我希望根据faculty_table $subject_id动态显示faculty_name。

表格结构:

faculty_table(faculty_id,faculty_name,subject_id)
subject_table(subject_id,subject_name,faculty_id)

1 个答案:

答案 0 :(得分:0)

您需要使用ajax执行此任务。

在当前文件中添加<div>及以下脚本。

<div id="faculty"></div>
<script type="text/javascript">
     function get_faculty()
       {
        var id = document.getElementById("company").value;
        var dataString = 'id='+ id;
        $.ajax
        ({
            type: "POST",
            url: "get_faculty.php",
            data: dataString,
            success: function(html)
            {
            $("#faculty").html(html);
            } 
        });
       }

</script>

现在在同一文件夹中创建另一个get_faculty.php文件,该文件将在公司下拉列表的onchange事件中调用。

在该文件中写下以下代码

    if($_POST['id'])
     {
     $id=$_POST['id'];

     $con=mysqli_connect("localhost","username","pass","dbname");
     $sql=mysqli_query($con,"SELECT faculty_name from faculty_table where subject_id = ".$id);
                   while($row=mysqli_fetch_array($sql))
                   {
                       echo $row['faculty_name'];

                   }
     }

别忘了写mysqli_connect凭据并进行相应的查询。