带有PHP选定值的HTML选项标记

时间:2015-03-26 17:20:43

标签: php html

你能帮我解决一下这段代码我做错了什么:

<option value="">------------ Select ------------</option>
<?php while (($row = mysql_fetch_array($tech))) {
                            ?>
<option value= <?php echo $row['id'] ?> 
<?php echo $selectedtechname ?>
<?php echo "selected" ?>
                          >
 <?php echo $row['technician_name'] ?></option>
                    <?php } ?>

所有变量都工作正常,因为我使用了Var_dump并且它们正确回显所以没有错误是SQL等。我需要做的是在HTML的选项标签中传递一个php语句,只需从列表中选择$ selectedtechname的值。要发布的值是$ row [&#39; id&#39;],但要显示的选定值应为$ selectedtechname

谢谢

2 个答案:

答案 0 :(得分:1)

您可以尝试以下操作:

 $selected='';
    <option value="">Select a value</option>
    <?php
    while ($row = mysql_fetch_array($tech)) {
    ?>
       <?php
         if($selectedtechname == $row['selectedtechname'])
          {
             $selected='selected';
          }
          else
          {
            $selected='';
          }
        ?>
    <option value="<?php echo $row['id']?>" <?php echo $selected;?> ><?php echo $row['value_to_display'];?></option>

    <?php
    }
    ?>

答案 1 :(得分:1)

我看到一篇类似的帖子 populate a select box with php mysql

while($row = mysql_fetch_assoc($result)) {
   if ($row['technician_name'] == $selectedtechname) {
       echo '<option   value=\"'.$row['id'].'" selected>'.$row['id'].'</option>';
   } else {
       echo '<option   value=\"'.$row['id'].'">'.$row['id'].'</option>';
   }
}