从MySQL数据库中预先选择的下拉列表值
问题描述:
虽然我已经研究过了,但我找不到任何解决方案。我需要将数据库值(“Default”)作为下拉列表的预选值。从MySQL数据库中预先选择的下拉列表值
<select name="listCustomer" id="listCustomer">
<?php
$sql = mysqli_query($connection,"SELECT customer_name FROM customers");
while ($row = mysqli_fetch_array($sql,MYSQLI_ASSOC)){
echo "<option value=\"" . $row['customer_name'] . "\">" . $row['customer_name'] . "</option>";}
?>
</select>
你能帮我解决吗?
答
回声之前只需创建一个变量,像这样:
$selected = ((strtolower($row['customer_name']) == 'default') ? 'selected' : '');
然后回声改成这样:
echo '<option '.$selected.' value="'.$row['customer_name'].'">'.$row['customer_name'].'</option>';
答
这可以用在CUSTOMER_NAME if语句来完成
$sql = mysqli_query($connection,"SELECT customer_name FROM customers");
while ($row = mysqli_fetch_array($sql,MYSQLI_ASSOC)){
if($row["customer_name"] === "Default"){
echo "<option value=\"" . $row['customer_name'] . "\" selected>" . $row['customer_name'] . "</option>";
} else {
echo "<option value=\"" . $row['customer_name'] . "\">" . $row['customer_name'] . "</option>";
}
}
?>
请注意第一个回波上的选定标签。
答
$query="SELECT customer_name FROM customers";
$result = @mysql_query ($query);
echo "<select name=customer_name value=' '>";
while([email protected]_fetch_array($result)){
echo "<option value=$drop[customer_name]>$drop[customer_name]</option>";
}
echo "</select>";
+0
如果您选择任何值,那么这肯定会插入到您的表中 –
感谢朋友,也有一些不必要的'“'痕迹在你的代码。除了那个以外,这解决了我的问题。但现在的问题是所选择的价值是不会到数据库现在,始终以‘默认’被插入到数据库你的 – EKBG
编辑的代码: '$ SQL = mysqli_query($连接, “SELECT CUSTOMER_NAME FROM客户”); 而($行= mysqli_fetch_array($ SQL,MYSQLI_ASSOC)){ \t。 \t \t \t \t \t \t \t \t \t $ selected =((strtolower($ row ['customer_name'])=='default')? 'selected':''); echo'';}' – EKBG
这是错误的。我的示例中的双引号不是多余的。所有的属性内容都应该用双引号括起来。 – junkfoodjunkie