我正试图从PHP制作一个下拉列表来在Smarty中工作,下拉列表的数据来自mysql。
我做到了:图像
但它不能作为下拉列表工作,它在一个部分中显示所有数据。
这是我在下面使用的代码。
PHP
<?php
foreach ($options as $multiplier) {
$option = "<option ";
if ($multiplier == $results['multiplier']) {
$option .= "selected=selected ";
}
$option .= "value=" . $multiplier . ">" . unesc($multiplier) . "</option>";
$multi['option'] = $option;
$multiplier_option[] = $multi;
}
$smarty->assign('multiplier_option', $multiplier_option);
unset($multiplier_option);
以及HTML。
<tr>
<td align='left' class='header'>{$lang_multiplier}:</td>
<td align='left' class='lista' colspan='2'><select name='multiplier'>{foreach item=multi from=$multiplier_option}{$multi.option}{/foreach}</select></td>
</tr>
我不知道该怎么做。
让Smarty为您完成工作。
html_options函数将为您构建标记,只需传入值和输出的乘数数组,并设置选定的乘数。
$smarty->assign('multipliers', $options);
$smarty->assign('selectedMultiplier', $results['multiplier']);
<tr>
<td align='left' class='header'>{$lang_multiplier}:</td>
<td align='left' class='lista' colspan='2'>
{html_options name=multiplier values=$multipliers output=$multipliers selected=$selectedMultiplier}
</td>
</tr>