我已成功获取我的PHP代码以连接到我的数据库并检索数据并显示它。我现在正在尝试获取此数据并将其显示在下拉菜单中,但是当我这样做时,下拉菜单会显示与数据库中的数据相关的正确数量的选项(即,如果有3个值,它会提供三个选项)在数据库中)。但它没有显示文本,所有选项都是空白的。关于它为什么没有显示文本的任何想法?
<?php
$dbhost= 'Host IP';
$dbuser ='My Username';
$dbpass = 'password';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
$sql='SELECT event_id FROM events';
mysql_select_db('db_name');
$retval= mysql_query($sql, $conn);
echo'<select name=dropdown value=', '>Dropdown</option>';
while($r= mysql_fetch_array($retval))
{
echo "<option value={$r["event_id"]}>{$r["events"]}</option>";
}
echo "</select>";
?>
http://i.imgur.com/30Uq0Ok.png
链接是菜单当前返回的内容
由于
答案 0 :(得分:2)
尝试这样(将您的查询更改为select *
)
echo '<option value='.$r["event_id"].'>'.$r["events"].'</option>';
答案 1 :(得分:2)
您没有从数据库中选择事件。您需要在查询中按名称选择所有(*)或必需的列。
更改您的查询:
$sql='SELECT event_id FROM events';
到:
$sql='SELECT * FROM events';
您还需要在引号内选择值。
在循环内更改此行:
echo "<option value={$r["event_id"]}>{$r["events"]}</option>";
为:
echo "<option value=\"{$r['event_id']}\">{$r['events']}</option>";
答案 2 :(得分:0)
您只是从表中选择event_id
。因此,$r["events"]
始终为空。
也选择标题字段。
<?php
$dbhost= 'Host IP';
$dbuser ='My Username';
$dbpass = 'password';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
$sql='SELECT event_id,event_title FROM events';
mysql_select_db('db_name');
$retval= mysql_query($sql, $conn);
echo'<select name=dropdown value=', '>Dropdown</option>';
while($r= mysql_fetch_array($retval))
{
echo "<option value={$r["event_id"]}>{$r["event_title"]}</option>";
}
echo "</select>";
?>
我假设,字段名称是“event_title”。