Php 如何将存储的数据库数据(即从下拉列表中选择的数据)检索为下拉列表中的选定数据
到目前为止,我所做的是将下拉选择的数据存储到数据库中,我现在想要的是基于文本框中键入的用户名并单击搜索按钮,要选择的下拉项是存储在数据库中的数据以及用户可以选择的值列表 我只想知道如何用来自数据库的选定数据替换文本Select from here,以及允许用户在下拉列表中编辑数据,并在单击submit按钮后再次将其保存到数据库中 存储数据时的代码如下所示Php 如何将存储的数据库数据(即从下拉列表中选择的数据)检索为下拉列表中的选定数据,php,phpmyadmin,Php,Phpmyadmin,到目前为止,我所做的是将下拉选择的数据存储到数据库中,我现在想要的是基于文本框中键入的用户名并单击搜索按钮,要选择的下拉项是存储在数据库中的数据以及用户可以选择的值列表 我只想知道如何用来自数据库的选定数据替换文本Select from here,以及允许用户在下拉列表中编辑数据,并在单击submit按钮后再次将其保存到数据库中 存储数据时的代码如下所示 <?php if( $_POST['registerbtn']){ $getuser= mysql_real_escape_str
<?php
if( $_POST['registerbtn']){
$getuser= mysql_real_escape_string(trim($_POST['user']));
$selected_value = $_POST['selectID'];
if($selected_value != 0){
require("./connect.php");
$query=mysql_query("SELECT * FROM user_details WHERE username='$getuser'");
$numrows= mysql_num_rows($query);
if($numrows == 0) {
mysql_query("INSERT INTO user_details VALUES ( '','$getuser','$selected_value')");
}
else
$errormsg = "There is already a user with that username ." ;
mysql_close();
}
else
$errormsg = "You must select a linecard";
}
//code to fill dropdown
require("./connect.php");
$sql = "SELECT select_id, linecard_name FROM selection ". "ORDER BY linecard_name";
$rs = mysql_query($sql);
$options = "<option value = '0'> Select from here </option>";
while($rownw = mysql_fetch_array($rs)){
$options .= "<option value = ".$rownw['select_id']." > ".$rownw['linecard_name']. " </option> ";
}
mysql_close() ;
$form = "<form action='./reg.php' method='post'>
<table>
<tr>
<td> </td>
<td> <font color='red'> $errormsg </font> </td>
</tr>
<tr>
<td> Username </td>
<td> <input type='text' name='user' value='$getuser' /> </td>
</tr>
<tr>
<td> Select Linecard </td>
<td> <Select name='selectID' > $options </select> </td>
</tr>
<tr>
<td> </td>
<td> <input type='submit' name='registerbtn' value='Register' /> </td>
</tr>
</form>";
echo $form;
?>
<?php
if( $_POST['savebtn']){
$search = $_POST['search'];
if($search == '' )
{
$errormsg1 = "Enter something in the search box";
}
else
{
require("./connect.php");
$query = mysql_query("SELECT * FROM user_details WHERE username = '$search'");
$numrows= mysql_num_rows($query);
$rows=mysql_fetch_assoc($query);
if($numrows == 1)
{
$getuser = $rows['username'];
$select_id= $rows['linecard_id'];
//selection table where linecard_name is stored along with select_id for the linecard_name to be displayed
$query1 = mysql_query("SELECT * FROM selection WHERE select_id = '$select_id' ") ;
$rows1=mysql_fetch_assoc($query1);
$linecard_name= $rows1['linecard_name'];
echo $linecard_name;
$sql = "SELECT select_id, linecard_name FROM selection ". "ORDER BY linecard_name";
$rs = mysql_query($sql);
while($rownw = mysql_fetch_array($rs)){
if( $select_id == $rownw['select_id']) {
echo $select_id;
$options .= "<option value = ". $select_id ." > " .$linecard_name. " </option> ";
}
}
}
else
$errormsg1 = "Username was Not found";
mysql_close() ;
}
}
?>
<?php
$form ="<form action='ad.php' method='post' id='search' >
<div class='place'>
<tr>
<td> </td>
<td> <font color='red' > $errormsg1 </font> </td>
</tr>
<div class='frm2'> <input type='text' size='15' value='$search' name='search' /> </div>
<div class='frm3'> <input type='submit' name='savebtn' /> </div>
<div class='clear'> </div>
</div>
</form>";
echo $form;
?>
<?php
require("./connect.php");
$sql = "SELECT select_id, linecard_name FROM selection "."ORDER BY linecard_name";
$rs = mysql_query($sql);
$options = "<option value = '0'> Select from here </option>";
while($rownw = mysql_fetch_array($rs)){
$options .= "<option value = ".$rownw['select_id']." > ".$rownw['linecard_name']. " </option> ";
}
mysql_close() ;
$form = "<form action='./reg.php' method='post'>
<table>
<tr>
<td> </td>
<td> <font color='red'> $errormsg </font> </td>
</tr>
<tr>
<td> Username </td>
<td> <input type='text' name='user' value='$getuser' /> </td>
</tr>
<tr>
<td> Select Linecard </td>
<td> <Select name='selectID' > $options </select> </td>
</tr>
<tr>
<td> </td>
<td> <input type='submit' name='savebtn' value='Save' /> </td>
</tr>
</form>";
echo $form;
?>
请按如下方式更改您的代码:
<?php
require("./connect.php");
$sql = "SELECT select_id, linecard_name FROM selection ". "ORDER BY linecard_name";
$rs = mysql_query($sql);
echo "<form action='./reg.php' method='post'>
<table>
<tr>
<td> </td>
<td> <font color='red'> $errormsg </font> </td>
</tr>
<tr>
<td> Username </td>
<td> <input type='text' name='user' /> </td>
</tr>
<tr>
<td> Select Linecard </td>
<td>";
?>
<Select name='selectID'>
<option value= '0' > Select from here </option>
<?php
while($rownw = mysql_fetch_array($rs)){
echo "<option value = ".$rownw['select_id']." > ".$rownw['linecard_name']. " </option> ";
}
?>
</select>
</tr>
<tr>
<td> </td>
<td> <input type='submit' name='registerbtn' value='Register' /> </td>
</tr>
</table>
</form>
<?php
mysql_close() ;
?>
您可以将选项存储到VARABLE中,我们称之为$options,然后将其插入到$form变量中。最后,你可以在任何地方回显它
<?php
require("./connect.php");
$sql = "SELECT select_id, linecard_name FROM selection ". "ORDER BY linecard_name";
$rs = mysql_query($sql);
$options = "<option value= '0' > Select from here </option>";
while($rownw = mysql_fetch_array($rs)){
$options .= "<option value = ".$rownw['select_id']." > ".$rownw['linecard_name']. " </option> ";
}
mysql_close() ;
$form = "<form action='./reg.php' method='post'>
<table>
<tr>
<td> </td>
<td> <font color='red'> $errormsg </font> </td>
</tr>
<tr>
<td> Username </td>
<td> <input type='text' name='user' /> </td>
</tr>
<tr>
<td> Select Linecard </td>
<td> <Select name='selectID'> $options </select>
</tr>
<tr>
<td> </td>
<td> <input type='submit' name='registerbtn' value='Register' /> </td>
</tr>
</table>
</form>";
echo $form;
尝试这样做
<?php
require("./connect.php");
$sql = "SELECT select_id, linecard_name FROM selection ". "ORDER BY linecard_name";
$rs = mysql_query($sql);
?>
<form action="<?php echo $_SERVER['SCRIPT_NAME']; ?>" method="POST">
<table>
<tr>
<td> </td>
<td> <font color='red'> $errormsg </font> </td>
</tr>
<tr>
<td> Username </td>
<td> <input type='text' name='user' /> </td>
</tr>
<?php while($rownw = mysql_fetch_array($rs)){ ?>
<tr>
<td> Select Linecard </td>
<td> <Select name='selectID'> <?php echo "<option value = ".$rownw['select_id']." > ".$rownw['linecard_name']. " </option> "; ?> </select>
</tr>
<?php } //end of while loop ?>
<tr>
<td> </td>
<td> <input type='submit' name='registerbtn' value='Register' /> </td>
</tr>
</table>
</form>;
选择线路卡
;
使用您的内部循环,因为表单是php格式的i get error,plz Help我认为您的代码将使用单个选项创建更多的选择框。解析错误:语法错误,意外的T_常量被封装_STRING@Sparkle:好的,现在应该可以用了,我在将$options
连接到$form
中时有一个输入错误。如果使用双引号,可以将变量放在字符串中:$form=“blablabla$options blablabla”;嘿@nadirs,你能告诉我如何在按下register按钮时获得所选值吗?读取post变量(根据你的代码select的名称是'selectID'):$selected\u value=$\u post['selectID']代码>有人能告诉我,当单击“注册”按钮时,如何从下拉列表中获取所选文本,以及如何使下拉列表不在每次单击“注册”按钮时刷新。要获取值,可以使用$\u POST['selectID']。但是,由于在选项标记的value属性中,我们分配了select\u id,因此将在$\u POST['selectID']中获得“select\u id”。要获取所选文本,必须使用select查询。只有当页面重新加载时,下拉列表才会刷新。因此,如果您不想重新加载页面,请使用ajax。请说,当单击“提交”按钮时,是否可以保留选定的下拉列表值