Php 编辑时在下拉列表中选择一个值

Php 编辑时在下拉列表中选择一个值,php,html,smarty,Php,Html,Smarty,我正在添加一个功能来编辑用户投放的广告。为此,我想选择用户输入值时选择的值。我如何实现这一点 <div class="nm"> Category </div> <div class="fl"> <select name="category" id = "ad_category" onchange="cangeSubCat(this.value)" > <option value="">---Select Category

我正在添加一个功能来编辑用户投放的广告。为此,我想选择用户输入值时选择的值。我如何实现这一点

<div class="nm">
  Category
</div>
<div class="fl">
  <select name="category" id = "ad_category" onchange="cangeSubCat(this.value)" >
    <option value="">---Select Category---</option>
    <option value="real_estate">Real Estate</option>
    <option value="hotels_resturants">Hotels and Resturants</option>
    <option value="car">Car Rental</option> 
  </select>
</div>
添加selected HTML属性,在XHTML中它是selected=selected

文件:


我的意思是我如何知道应该选择哪一个..对于不同的用户它会有所不同。我想在添加广告时选择哪个用户

这取决于你的代码。可以使用包含所有值/标题对value=>title和所选值的数组来执行此操作。然后,当键值等于所选值时,该属性将添加到输出中。因为它是一个数组,所以很容易对它进行迭代

$otpions = array(
    'a' => 'A',
    'b' => 'B',
);
$selected = 'b';

echo '<select>';
foreach ($options as $value => $title)
{
    printf('<option value="%s" %s>%s</option>', 
           $value, $selected == $value ? 'selected' : '', $title);
}
echo '</select>';

好的,假设您从db获取值,并且选择框的值在$select变量中,那么您必须写入

  <option <?php if($select=="real_estate") { echo "selected='selected'"; } ?> value="real_estate">Real Estate</option>
  <option <?php if($select=="hotels_resturants") { echo "selected='selected'"; } ?> value="hotels_resturants">Hotels and Resturants</option>
  <option <?php if($select=="car") { echo "selected='selected'"; } ?> value="car">Car Rental</option>    

你可以使用这个神奇的功能

function __selectedDb($ctrlValue,$dbValue)
{
    if($ctrlValue == $dbValue)
        return "selected='selected'";
    else
        return "";
}


我是用核心php编写的,请将php代码转换为smarty

,在该字段中,我将把这个??添加到应该选择的字段中。我的意思是,我如何知道应该选择哪一个。对于不同的用户,这将是不同的。我想在添加广告时选择哪个用户
function __selectedDb($ctrlValue,$dbValue)
{
    if($ctrlValue == $dbValue)
        return "selected='selected'";
    else
        return "";
}
<select name="category" id = "ad_category" onchange="cangeSubCat(this.value)" >
                        <option value="" <?php echo __selectedDb("","$cat")?>>---Select Category---</option>
                        <option value="real_estate" <?php echo __selectedDb("real_estate","$cat")?>>Real Estate</option>
                         <option value="hotels_resturants" <?php echo __selectedDb("hotels_resturants","$cat")?>>Hotels and Resturants</option>
                         <option value="car" <?php echo __selectedDb("car","$cat")?>>Car Rental</option>    
                    </select>