如何使用php和mysql获取下拉菜单中项目的详细信息

如何使用php和mysql获取下拉菜单中项目的详细信息,php,mysql,Php,Mysql,我有一个数据库,在该数据库中有一个名为courses\u details的表。我希望当用户从下拉菜单中选择一门课程时,该课程的信息(CourseCode、CourseTile、CourseCredits)可以使用php以表单的形式显示。我拿不到它。如果有人能帮助我,我将不胜荣幸 <form action="courses.php" method="POST" class="FormStyle"> <select name="courses"> <op

我有一个数据库,在该数据库中有一个名为
courses\u details
的表。我希望当用户从下拉菜单中选择一门课程时,该课程的信息(CourseCode、CourseTile、CourseCredits)可以使用php以表单的形式显示。我拿不到它。如果有人能帮助我,我将不胜荣幸

<form action="courses.php" method="POST" class="FormStyle">
    <select name="courses">
    <option value="ITC">Intro. To Computing</option>
    <option value="OOP">Object Oriented Programming</option>
    <option value="DS">Data Structures</option>
    </select>
</form>

简介。计算
面向对象编程
数据结构

因此,这是创建$\u POST[submit]和$\u POST['courses']变量的表单。
成员
将是您希望使用查询信息显示表单的页面

<form action="members.php" method="POST" class="FormStyle">
    <select name="courses">
      <option value="ITC">Intro. To Computing</option>
      <option value="OOP">Object Oriented Programming</option>
      <option value="DS">Data Structures</option>
    </select>
    <input type="submit" name="submit" value="Submit">
</form>
然后在“表单页面”。php

创建一个表单以显示结果

<form action="somelink.php" method="POST">
   <input class="form-group-item" value="<?php $cCode = ($courseCode > 0 ? echo $courseCode : echo ''); echo  $cCode; ?>" name="courseCode">
   <input class="form-group-item" value="<?php $cTitle = ($courseTitle > 0 ? echo $courseTitle  : echo ''); echo  $cTitle; ?>" name="courseTitle">
   <input class="form-group-item" value="<?php $cCredits  = ($courseCredits > 0 ? echo $courseCredits : echo ''); echo  $cCredits;  ?>" name="cCredits ">
   <input type="submit" name="submitMembers" value="Submit">
</form> 


搜索并使用AjaxPHP/MySQL查询是否有问题,或者您不知道如何获取所选项目的结果?@OldPadawan我不知道如何获取所选项目的结果。在courses.PHP中,您将获得“courses”的发布值->
$selectedcourse=$\u POST['courses'
您需要在select$\u POST('submit')和$\u POST('courses')中添加一个submit按钮或一个JS action
on change
?这不应该是$_POST['submit']和$_POST['courses']-括号而不是括号吗?@Jason看到我更新的答案,你是100%正确的。最好的
include = 'constants.php';
if($_POST['submit']){//here we check to see if the input 'submit' was posted through the form

  //success define your variable(s)

  //$courses will now hold the $_POST variable that passed through the http POST method (the form names as defined in your various forms tags)
  $courses = $_POST['courses'];//assign the value of your select field to the variable $courses

  //connect to DB if not already
  $db = new mysqli(HOST, USER ,PASSWORD, DATABASE);//CONSTANTS from a linked file

// Check for errors
if(mysqli_connect_errno()){
    echo mysqli_connect_error();
}
//using an example DB with a table defined as a constant DB_MEMBERS
$result = $db->query("SELECT * FROM `DB_MEMBERS` WHERE `courses`=".$courses);
if($result->num_rows){// if rows are present from the query
     // Cycle through results and define your variables
    while ($row = $result->fetch_assoc()){
        $courseCode = htmlspecialchars($row['CourseCode']); //*avoid possible exploits with htmlspecialchars()
        $courseTitle = htmlspecialchars($row['CourseTitle']); //*
        $courseCredits = htmlspecialchars($row['CourseCredits']);//*
    }
}
<form action="somelink.php" method="POST">
   <input class="form-group-item" value="<?php $cCode = ($courseCode > 0 ? echo $courseCode : echo ''); echo  $cCode; ?>" name="courseCode">
   <input class="form-group-item" value="<?php $cTitle = ($courseTitle > 0 ? echo $courseTitle  : echo ''); echo  $cTitle; ?>" name="courseTitle">
   <input class="form-group-item" value="<?php $cCredits  = ($courseCredits > 0 ? echo $courseCredits : echo ''); echo  $cCredits;  ?>" name="cCredits ">
   <input type="submit" name="submitMembers" value="Submit">
</form>