Php 基于组合框选择显示结果

Php 基于组合框选择显示结果,php,Php,我有一个动态组合框和我的获取按钮。当用户从combobox中选择一个值并单击“获取”按钮时,所有其他相关值将显示在文本框中,供用户编辑和更新记录。这很好 <form id="form1" method="post" action="edit.php"> <select name="ID" id="select"> <?php display_Id();?> </select> <input type="submi

我有一个动态组合框和我的获取按钮。当用户从combobox中选择一个值并单击“获取”按钮时,所有其他相关值将显示在文本框中,供用户编辑和更新记录。这很好

<form id="form1" method="post" action="edit.php">   
  <select name="ID" id="select">
     <?php display_Id();?>
  </select> 
  <input type="submit" name="Fetch" id="Fetch" value="Fetch" />
</form>

function display_Id() {
    $query = "SELECT * FROM Flight";

    $result = mysql_query($query) or die("Failed to fetch records");
    confirm_query($result);

    while($rows = mysql_fetch_array($result)) {
        $flightNum = $rows['FlightNo'];
        echo "<option value=\"$flightNum\" ";
        echo " selected";
        echo "> $flightNum </option>";
    }       
}

函数显示\u Id(){
$query=“从航班中选择*”;
$result=mysql_query($query)或die(“无法获取记录”);
确认查询($result);
while($rows=mysql\u fetch\u array($result)){
$flightNum=$rows['FlightNo'];
回显“$flightNum”;
}       
}

问题出在Fetch按钮上。当用户单击“获取”时,将显示其他值,但从组合框中选择的值正在刷新。如何使值在按下Fetch按钮后仍保持选中状态?

您的问题在某种意义上是不完整的,您的
dislay_Id()
代码没有显示在这里。但是,一般来说,您应该在while($rows=mysql\u fetch\u array($result))之后添加
selected
{ $flightNum=$rows['FlightNo']; 回显“$flightNum”; }
请将您的
display\u Id()
代码添加到问题中以获得帮助。您需要将该选项标记为在
display\u Id()
方法中选择的选项。您可以从
$\u POST['ID']
中获取所选选项的值,我已经添加了display\u ID();我在中添加了“已选择”。问题是,单击“获取”按钮后,combobox中的值没有被选择。好的,我这样做了,并且“获取”按钮没有让combobox中的值被选择对不起,没有得到您所说的
Fetch按钮没有让combobox中的值被选择
Ok我在另一个php文件中尝试了这段代码,它成功了。它以前不工作,因为函数diplay_Id();在另一个名为functions.php的文件中,在我的edit.php中,我有require(“function.php”);谢谢这段代码有效,它正在选择:)太好了!您能否将此更改为未来访客可接受的答案?:)你没有,而且它是在你接受答案之前发布的。
function displayId(){
  if($value[x]== $currentValue) {
    echo "<option value='$value[x]' selected>sth</option>";
  } 
  else
  {
    echo "<option value='$value[x]'>sth</option>";
  }
}
echo "<option value=\"$flightNum\" ";

if($_POST['ID'] == $flightNum)
{        
  echo " selected";
}
echo "> $flightNum </option>";
while($rows = mysql_fetch_array($result))
{
    $flightNum = $rows['FlightNo'];
    echo "<option value=\"$flightNum\" ";
    if($_POST['ID'] == $flightNum)
    {
        echo " selected";
    }
    echo "> $flightNum </option>";
}