我现在有一个问题[PHP]。我有一个下拉菜单,它加载我的数据库的第一页,当我继续到下一页它也有一个下拉菜单,它也加载我的数据库,我也可以得到我的下拉菜单的值在第一页只使用echo。
是这样的场景:我在第一页的下拉菜单中选择了"字母A",当我点击按钮时,它将进入下一页。第二页中的下拉菜单加载了数据库中的项目,但不是"-select-"是下拉菜单中的第一个索引,我想要的是"字母A"将是第一个索引。
这是我在第一页的代码:
<select name="id">
<option value="" >- select -</option>
<?php
include 'connect.php';
$q = mysql_query("select fldNetname from tblnetwork");
while ($row1 = mysql_fetch_array($q))
{
echo "<option value='".$row1[fldNetname]."'>".$row1[fldNetname]."</option>";
}
?>
</select>
这是我在第二页下拉菜单的代码:
if ($get_ID != "")
{
echo "<br/>";
echo $get_ID;
//echo "show()";
}
else
{
echo "No Network Selected";
echo "<br/>";
//echo "hide()";
}
?>
<option value="">- select -</option>
<?php
include 'connect.php';
$q = mysql_query("select fldNetname from tblnetwork");
while ($row1 = mysql_fetch_array($q))
{
echo "<option value='".$row1[fldNetname]."'>".$row1[fldNetname]."</option>";
}
?>
</select>
提前感谢!
在第二页中,您需要检查该值是否与您从第一页收到的值相同:
echo "<option value='".$row1[fldNetname]."' " . (($row1[fldNetname] == $get_id)?"selected":"") . ">".$row1[fldNetname]."</option>";
如果$get_ID,实际上是您的$_GET['id']值,那么只需执行…
while ($row1 = mysql_fetch_array($q))
{
echo "<option value='".$row1['fldNetname']."'";
if($row1['fldNetname']==$get_ID){echo "selected='selected'";}
echo ">".$row1['fldNetname']."</option>";
}
或一行…
while ($row1 = mysql_fetch_array($q))
{
echo "<option value='".$row1['fldNetname']."' " . (($row1['fldNetname'] == $get_ID)?"selected='selected'":"") . ">".$row1'[fldNetname']."</option>"
}
你试过了吗?
改变(第二页)
<option value="">- select -</option>
<option value="<?php echo $yourVar; ?>"><?php echo $yourVar; ?></option>
然后在while循环中,跳过所选的值,以防止重复选择。
比如:
while ($row1 = mysql_fetch_array($q))
{
if($yourVar != $row1[fldNetname]){
echo "<option value='".$row1[fldNetname]."'>".$row1[fldNetname]."</option>";
}
}