我正在尝试从我的数据库中获取数据并将其显示在我的下拉列表中 但我不能得到结果我在这里尝试其他帖子但不能理解
任何人都可以帮助我,这是我的项目
<?php
$connection =mysql_connect('localhost', 'root', '','mjj_app');
$sql="SELECT food FROM menu";
$lists=mysql_query($sql);
echo"<select name='fname' id='mySelect' value='Foodname'>"
while($food = mysql_fetch_array($lists)) {
echo '<option value='.$food['food'].'>'.$food['food'].'</option>';
}
echo '</select>';
?>
答案 0 :(得分:2)
如果您实际使用的是mysql_
数据库扩展,则还需要使用mysql_select_db()
您还需要检查mysql_
扩展程序的每次调用是否都没有返回任何错误。
<?php
$connection =mysql_connect('localhost', 'root', '','mjj_app');
if ( ! $connection ) {
echo 'Could not connect: ' . mysql_error();
exit;
}
if ( ! mysql_select_db('DATABASE_NAME') ) {
echo 'Cant select database : ' . mysql_error();
exit;
}
$sql="SELECT food FROM menu";
$lists=mysql_query($sql);
if ( ! $lists ) {
echo 'Query failed: ' . mysql_error();
exit;
}
echo"<select name='fname' id='mySelect' value='Foodname'>"
while($food = mysql_fetch_array($lists)) {
echo '<option value='.$food['food'].'>'.$food['food'].'</option>';
}
echo '</select>';
?>
由于您显然还在学习,请花时间学习
mysqli_
或PDO
数据库扩展。mysql_
扩展已被弃用多年,并且很快就会在PHP7中完全失败,这将使您的代码过时。见this post its a good read and will help you decide which suits you.
答案 1 :(得分:1)
您使用mysql_select_db
同样优良的做法是捕获从查询返回的可能错误或零个数量的记录。请参阅下面的代码。
$connection = mysql_connect('localhost', 'root', '');
if(!$connection)
{
echo 'Could not connect to server because : '.mysql_error();
exit;
}
if(!mysql_select_db('database_name'))
{
echo 'Could not select database because : '.mysql_error();
exit;
}
$sql = "SELECT food FROM menu";
$lists = mysql_query($sql);
if($lists)
{
if(mysql_num_rows($lists) > 0)
{
echo "<select name='fname' id='mySelect' value='Foodname'>";
while($food = mysql_fetch_array($lists))
{
echo '<option value='.$food['food'].'>'.$food['food'].'</option>';
}
echo '</select>';
}
else
{
echo "No records found.";
}
}
else
{
echo "Error while fetching records : ".mysql_error();
}