我正在尝试从php中的mysql表填充选择框(下拉列表),但我得到空白结果,有人可以查看我的代码并告诉我出了什么问题吗?
我需要使用我的sql查询中可用的日期填充select,因此它们显示为seletion选项....
<?php
echo JText::_('Please select the date:');
$database= &JFactory::getDBO();
$database->setQuery('SELECT training_id,training,trainingDate FROM training');
$result = $database->loadObjectList();
echo '<select name="whatever">';
foreach ($result as $row) {
echo '<option value="'.$row->training_id.'" />';
}
echo '</select>';
?>
答案 0 :(得分:3)
您指定了一个选项值,但是您没有提供人类可读的选项文本:
echo '<select name="whatever">';
foreach ($result as $row) {
<!-- here we go -->
echo '<option value="'.$row->training_id.'">'.$row->training.'</option>'; // always close options!!!
}
echo '</select>';
答案 1 :(得分:1)
echo '<option value="'.$row->training_id.'">'.$row->trainingDate.'</option>';
如果这不起作用那么你的$ row-&gt; training_id没有设置,所以你需要调试它(例如在那行之前做一个print_r($ row)来查看$里面的内容行对象)
答案 2 :(得分:0)
试试这个:
while($row = mysql_fetch_object($result)) {
而不是:
foreach($result as $row) {