0

我想从 php 变量中设置 HTML 下拉菜单。我给你我的代码,这样你就可以看到我想做的事情:

<?php
$html_table = '
<table border="0" cellspacing="0" cellpadding="0"><tr>';
while($arr = pg_fetch_array($result1))
{
$html_table .= "<tr><td> $arr[0] </td></tr>";                          
}
$html_table .='</tr>';
?>

<p>
<select name="db" size="1">
<option> $html_table </option>  #### <- that is my question, how to get that working
</select>
</p>

我希望你明白我想做什么。如果您知道更好的方法,请告诉我。干杯

4

4 回答 4

4
<?php
$options = '';
while($arr = pg_fetch_array($result1)) {
    $options .= '<option>'.$arr[0].'</option>';                          
}
?>

<p>
<select name="db" size="1">
    <?php echo $options; ?>
</select>
</p>
于 2013-11-01T22:53:41.237 回答
0

只需替换$html_table<?php echo $html_table; ?>就可以了 - 从 PHP 的角度来看就是这样。正如其他人指出的那样,HTML 当然是无效的。

于 2013-11-01T22:53:06.410 回答
0

第一:你没有关闭你的<table>标签。

第二:您不能将<table>标签粘贴到<select>. 您应该放置一系列<option> 元素,每个元素都有一个数组元素。

第三:要打印 PHP 变量,您应该这样做:

<option><?php echo $html_table; ?></option>

但同样:它会破坏你的 HTML,因为表不能在 select 选项中。最好的解决方案是:

<select name="db" size="1">
    <?php while ($arr = pg_fetch_array($result1)): ?>
        <option><?php echo $arr[0]; ?></option>
    <?php endwhile; ?>
</select>
于 2013-11-01T22:54:11.287 回答
-1

所以像这样设置你的选项元素

<option value="<?php echo $html_table; ?>"><?php echo $html_table; ?></option>

只是知道,一个选项不能是一个表。

于 2013-11-01T22:53:15.943 回答