从数据库中填充下拉列表时出现问题


getting issues in populating the dropdown list from the database

我正试图使用以下php代码从数据库中提取的数据来填充html表单中的下拉列表:

<?php
$user_name = "root";
$password = "";
$database = "student";
$host_name = "localhost";
$con = mysqli_connect($host_name, $user_name, $password, $database) or die("Error not connected! " . mysqli_error($con));
//COURSE selection from database........
$query = "SELECT course_name FROM course_master";
$result = mysql_query($query); // Run your query
if (!mysqli_query($con, $query)) {
  echo "<script type='text/javascript'>alert('Error!!')</script>" . $sql . "<br>" . mysqli_error($con);
} else {
  echo "<script type='text/javascript'>alert('Success!!')</script>";
}
echo '<select name="course">'; // Open your drop down box
// Loop through the query results, outputing the options one by one
while ($row = mysql_fetch_assoc($result)) {
  echo '<option value="' . $row['course_name'] . '">' . $row['course_name'] . '</option>';
}
echo '</select>'; // Close your drop down box
mysqli_close($con);
?>

但它只是在我的表单开头显示一个空的下拉框,而不是用从数据库中提取的所需内容来填充它。有人能帮忙吗???

您混合了mysql&mysqli

1)更改

$result = mysql_query($query); // Run your query

$result = mysqli_query($con, $query); // Run your query

2)更改

if (!mysqli_query($con, $query)) {

if (!$result) {

=>$result已经设置了结果。

更新的代码

<?php
$user_name = "root";
$password = "";
$database = "student";
$host_name = "localhost";
$con = mysqli_connect($host_name, $user_name, $password, $database) or die("Error not connected! " . mysqli_error($con));
//COURSE selection from database........
$query = "SELECT course_name FROM course_master";
$result = mysqli_query($con, $query); // Run your query
if (!$result) {
  echo "<script type='text/javascript'>alert('Error!!')</script>" . $sql . "<br>" . mysqli_error($con);
} else {
  echo "<script type='text/javascript'>alert('Success!!')</script>";
}
// Open your drop down box
echo '<select name="course">'; 
// Loop through the query results, outputing the options one by one
while ($row = mysqli_fetch_array($result,MYSQLI_ASSOC)) {
  echo '<option value="' . $row['course_name'] . '">' . $row['course_name'] . '</option>';
}
echo '</select>'; 
// Close your drop down box
mysqli_close($con);
?>