我很难思考如何在开始页面edit.php上设置默认选择值。因此,当我打开edit.php时,它会在选择框中显示从数据库获取值的不同值。现在第一个值打开,这是空白的。我想要打开edit.php页面选择下拉列表将从数据库colour
表中选择默认值。因此,如果mysql colour
表格为3而不是s select default value Blue. It it
s 4,那么默认选择值将为灰色。
SQL
colour
= 3
代码:main.php
$query = mysql_query("SELECT `colour` FROM `properties`");
$row = mysql_fetch_assoc($query);
if($row['colour'] == 1) { echo ''; }
else if($row['colour'] == 2) { echo '<b>Colour:</b> Brown'; }
else if($row['colour'] == 3) { echo '<b>Colour:</b> Blue'; }
else if($row['colour'] == 4) { echo '<b>Colour:</b> Gray'; }
代码:edit.php
<form action="edit.php" method="post" >
<select name="colour">
<option value="1" <?php if (@$_POST['colour']=='1') {echo "selected='selected'"; } ?>></option>
<option value="2" <?php if (@$_POST['colour']=='2') {echo "selected='selected'"; } ?>>Brown</option>
<option value="3" <?php if (@$_POST['colour']=='3') {echo "selected='selected'"; } ?>>Blue</option>
<option value="4" <?php if (@$_POST['colour']=='4') {echo "selected='selected'"; } ?>>Gray</option>
</select>
<input type="submit" value="Submit"/>
</form>
答案 0 :(得分:0)
您需要在编辑页面上传递颜色变量。 例如:
<option value="1" <?=($color==1)?'selected="true"':'' ?> ></option>
<option value="2" <?=($color==2)?'selected="true"':'' ?> >Brown</option>
依旧......
此处,$color
来自数据库选定值。
如果你想从数据库中获取价值,你不需要POST变量。
答案 1 :(得分:0)
在客户端执行此操作时会更容易。你需要改变
<select name="colour">
到
<select name="colour" id="colour">
然后将此代码放入edit.php
<script>
window.onload = function(){
var select = document.getElementById("colour");
select.value = 3; //now, 3 is the default value of your select
};
</script>