在下拉列表中选择php mysql最佳实践展示

在下拉列表中选择php mysql最佳实践展示,php,drop-down-menu,selected,Php,Drop Down Menu,Selected,我有一个相当简单的问题。我有一个选择下拉列表,值为1到10。这是一个编辑屏幕,因此用户已经选择了应选择的值。我给了他们改变现状的机会。所以我需要做的就是在选项值中插入所选的单词。为了完成这个简单的任务,我一直在做一些不雅的if-thens。有没有最佳实践或简单的方法来做到这一点。执行所有这些if-thens并创建10个新变量似乎不必要的开销。注意:出于将html与php逻辑分开的原因,我不想按顺序写出选项值。我将html放在单独的区域中,只需要在适当的位置设置所选的变量 if ($row['po

我有一个相当简单的问题。我有一个选择下拉列表,值为1到10。这是一个编辑屏幕,因此用户已经选择了应选择的值。我给了他们改变现状的机会。所以我需要做的就是在选项值中插入所选的单词。为了完成这个简单的任务,我一直在做一些不雅的if-thens。有没有最佳实践或简单的方法来做到这一点。执行所有这些if-thens并创建10个新变量似乎不必要的开销。注意:出于将html与php逻辑分开的原因,我不想按顺序写出选项值。我将html放在单独的区域中,只需要在适当的位置设置所选的变量

if ($row['points']==1){
$select1 = "selected"}
if ($row['points']==2){
$select2 = "selected"}
//values 3 through 9
if ($row['points']==2){
$select2 = "selected"}


echo '<select name="points">';
echo '<option value = 1'. $select1.'>1</option>';
echo '<option value=2'. $select1.'>2</option>';
//values 3 through 9
echo '<option value=10'.$select10.'>10</option>';
echo '</select>';
if($row['points']==1){
$select1=“selected”}
如果($row['points']==2){
$select2=“selected”}
//值3到9
如果($row['points']==2){
$select2=“selected”}
回声';
回声“1”;
回声“2”;
//值3到9
回音‘10’;
回声';

for($x=1;$x
for($x=1;$xfor循环适用于此,使用内联if-else语句测试所选案例

echo '<select name="points">';
for ($i=1; $i<=10; $i++) {
   echo "<option value='{$i}'".($row['points']==$i ? ' select="selected"':'').">{$i}</option>";   

}
echo '</select>';
echo';

for($i=1;$ifor循环适用于此,使用内联if-else语句测试所选案例

echo '<select name="points">';
for ($i=1; $i<=10; $i++) {
   echo "<option value='{$i}'".($row['points']==$i ? ' select="selected"':'').">{$i}</option>";   

}
echo '</select>';
echo';

对于($i=1;$i,因为您使用的是单个可选列表(不允许多个选择),即一次只能选择一个。查找

echo str_replace(“value=”、“value=”、“value=”、“$selected_value.”、“selected”、“12…”);

因为您使用的是单个可选列表(不允许多个选择),即一次只能选择一个。查找

echo str_replace(“value=”、“value=”、“value=”、“$selected_value.”、“selected”、“12…”);

我使用jquery和一个隐藏字段来完成这项工作,该字段表示
的选定值

html:


我使用jquery和一个隐藏字段来完成它,该字段表示
的选定值

html:


这样做的优点是使用name=字符串。如果名称是数字,则上面的循环方法也很好。这样做的优点是使用name=字符串。如果名称是数字,则上面的循环方法也很好。
echo str_replace("value='".$selected_value."'", "value='".$selected_value."' selected", "<option value='1'>1</option><option value='2'>2</option> ....");
<input type=hidden name=points value=1>
<select name="points">
  <option value=1>1</option>
  <option value=2>2</option>
</select>
$('input[type=hidden]').each(function(){
            var e = $(this);
            var name = e.attr("name");
            var val = e.val();
            if(name!="")
            {
                e.parent().find('select[name='+name+']').val(val);              
            }       
        });