![](/img/trans.png)
[英]Using Apostrophe in MySQL ENUM value that will populate HTML combo box for database search
[英]How to populate html combo box with mysql data
请帮助,我在组合框上加载mysql数据时遇到问题。 我正在加载的数据是表中的1列。 这是我当前的代码,由于某种原因它崩溃了Firefox:
<td colspan=”2″>Religion</TD>
<td>
<select name="REL" onClick="submitCboSemester();">
<?php
$query_disp="SELECT * FROM Religion ORDER BY RID";
$result_disp = mysql_query($query_disp, $conn);
while($query_data = mysql_fetch_array($result_disp))
{
?>
<option value="<? echo $query_data["RID"]; ?>"<?php if ($query_data["RID"]==$_POST['REL']) {?>selected<? } ?>><? echo $query_data["RELIGION"]; ?></option>
<? } ?>
</select>
</td>
列是RELIGION
,ID是RID
如何使用RELIGION列中的所有数据填充组合框
有可能,你没有在php.ini
启用short_open_tag
,这可能是导致你的代码失败的原因。
此外,您应输出selected="selected"
,而不仅仅是selected
尝试这个:
<td colspan=”2″>Religion</TD>
<td>
<select name="REL" onClick="submitCboSemester();">
<?php
$query_disp="SELECT * FROM Religion ORDER BY RID";
$result_disp = mysql_query($query_disp, $conn);
while($query_data = mysql_fetch_array($result_disp))
{
?>
<option value="<?php echo $query_data["RID"]; ?>"<?php if ($query_data["RID"]==$_POST['REL']) {?> selected="selected"<? } ?>><?php echo $query_data["RELIGION"]; ?></option>
<? } ?>
</select>
</td>
<html>
<title>
demo </title>
<body>
<?
// Load field datas into List box
$cn=mysql_connect("localhost",root) or die("Note: " . mysql_error());
echo "Conn ok<br>";
$res=mysql_select_db("test",$cn) or die("Note: " . mysql_error());
echo " Database opened<br>";
$q="insert into usha2 (`sno`, `city name`) values (NULL, 'Nagercoil');";
//$q="INSERT into `test`.`usha2` (`sno`, `city name`) VALUES (NULL, 'Delhi');";
$res=mysql_query($q) or die("Note: " . mysql_error());
echo " record inserted<br>";
$res=mysql_query("select * from usha2;") or die("Note: " . mysql_error());
echo " qry executed<br>";
?>
<select name="pno" size=1>
<?
while($ri = mysql_fetch_array($res))
{
echo "<option value=" .$ri['city name'] . ">" . $ri['city name'] . "</option>";
}
echo "</select> "
?>
</body>
在显示之前提取数据!
此外,在混合PHP和HTML时使用PHP替代语法 :
<?php
$query_disp="SELECT * FROM Religion ORDER BY RID";
$result_disp = mysql_query($query_disp, $conn);
$options = array();
while ($query_data = mysql_fetch_array($result_disp)) {
$options[$query_data["RID"]] = $query_data["RELIGION"];
}
?>
<select name="REL" onClick="submitCboSemester();">
<?php foreach ($options as $key => $value) : ?>
<?php $selected = ($key == $_POST['REL']) ? 'selected="selected"' : ''; ?>
<option value="<?php echo $key ?>" <?php echo $selected ?>>
<?php echo $value ?>
</option>
<?php endforeach; ?>
</select>
当您从数据库中提取数据时,您应该使用以下格式,因为您当前使用的格式正在逐步淘汰,因为MySqli进展
$religion = $db->query("SELECT Religion FROM TableName ORDER BY RID");
$ db是与这样创建的数据库的连接
$db = new Mysqli($server, $username, $password, $database);
只需将变量设置为正确的值即可。
貌似你的价值和结束之间没有空格selected
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.