2011-01-07 85 views
0

这可能很复杂,以解释。我建立了一个时间表系统,员工可以将他们自己的时间表记录插入到MySQL数据库中。这工作正常,但我已经给他们编辑他们已经插入的项目的选项,所以我有一个下拉菜单显示从MySQL所有项目号码可供他们选择,但我也想设置下拉的默认值为其中,当他们插入的记录,他们选择的项目数量(即不必记住它是什么项目)网页上的下拉菜单的默认值

这里是我的代码:

$result1 = mysql_query("select project_no from `projects`") or die(mysql_error()); 
      echo '<select name="project" class="project">'; 
     while($row1 = mysql_fetch_array($result1)){ 
      echo "<option selected='yes' value=".$row1['project_no'].">".$row1['project_no']."</option>"; 
     } 
      echo '</select>'; 

的记录被存储在一个名为时间表表,所以我可以做一个选择,但我不知道如何设置正确的项目号码作为默认值在上述下拉?

这有道理吗?

+0

为什么你将每个**选项标记为`selected`呢? – zerkms 2011-01-07 12:21:05

回答

1

存储在一个变量,例如,$ projnum,项目数量和每个值进行比较。

$result1 = mysql_query("select project_no from `projects`") or die(mysql_error()); 
      echo '<select name="project" class="project">'; 
     while($row1 = mysql_fetch_array($result1)){ 
      echo "<option "; 
      if ($row1['project_no'] == $projnum) { echo 'selected="selected"; } 
      echo " value=".$row1['project_no'].">".$row1['project_no']."</option>"; 
     } 
      echo '</select>'; 
0

变化

selected='yes' 

selected='selected' 
1
$project_to_select = 42; 

    while($row1 = mysql_fetch_array($result1)){ 
     echo "<option " . ($row1['project_no'] == $project_to_select ? "selected='selected'" : "") . " value=".$row1['project_no'].">".$row1['project_no']."</option>"; 
    }