PHP MySQL表单选择返回
我正在努力让这段代码正常工作,我想从中得到的是显示数据库中已经存在的项目,以便在选择表单中进行选择PHP MySQL表单选择返回,php,mysql,Php,Mysql,我正在努力让这段代码正常工作,我想从中得到的是显示数据库中已经存在的项目,以便在选择表单中进行选择 <label>Server Ports:</label> <select multiple class="form-control" name="select[]"> <?php // Get Server Information $query = "SELECT port_no FROM _servers WHERE (server_id =
<label>Server Ports:</label>
<select multiple class="form-control" name="select[]">
<?php
// Get Server Information
$query = "SELECT port_no FROM _servers WHERE (server_id = '$servid') ";
$result = mysql_query($query) or die ('Unable to run query:'.mysql_error());
while($row = mysql_fetch_assoc($result)){
$no = $row['port_no'];
}
$query = "SELECT id, name, port_no, unique_id FROM ports ORDER BY name ASC";
$result = mysql_query($query) or die ('Unable to run query:'.mysql_error());
while($row = mysql_fetch_assoc($result))
{
$port_no = $row['port_no'];
$port_name = $row['name'];
$p_unique = $row['unique_id'];
}
?>
<option value="<?php echo $p_unique;?>"
<?php
if ($p_unique == $no) {
$check = 'selected';
} else {
$check = '';
}
echo $check;
?>
>
<?php
echo $row['name'];
?>
(
<?php
echo $row['port_no'];
?>
)</option>
<?php
}
?>
</select>
您确定您的测试必须是$p_unique==$no{},而不是$port_no==$no{}吗 如果是,请尝试检查变量值: 执行$no的操作: 在while循环中,还可以检查$p_unique和$no的值,如下所示:
var_dump($p_unique.'/'.$no);
此外,这里还有一种最简单的方法来测试选定的:
<option value="<?php echo $p_unique;?>" <?php if ($p_unique == $no) echo 'selected="selected"'; ?>><?php echo $row['name'] ;?> (<?php echo $row['port_no'] ;?>)</option>
mysql有点不受欢迎。有什么问题吗?仅显示已检查状态,或者根本不显示?@RST必须检查的im返回的数据未显示为checkedtry$checked='checked=checked';标记空格。或者只是$checked='checked';我的意思是选中而不是选中
<option value="<?php echo $p_unique;?>" <?php if ($p_unique == $no) echo 'selected="selected"'; ?>><?php echo $row['name'] ;?> (<?php echo $row['port_no'] ;?>)</option>