我有一个选择框,它从数据库中获取值。数据库中的选项有:
-
纽约市
-
济州岛
选择框显示数据库中的精确值。我有一个提交按钮,它将值张贴到另一个页面。我的问题是,当我回显所选的选项值时,空白后面的单词不会显示,即它只显示"Newyork"。这是我的代码:
<select name="users_desc" id="hometexts">
<option selected='selected' value='' disabled='disabled' >Select Name</option>";
<?php
$result = mysql_query("SELECT public_desc,public_id FROM table");
while ($row = mysql_fetch_array($result))
{
if ($_GET['users_desc']==$row["public_id"])
{
echo '<option selected="selected" value='.$row["public_desc"].'>'.$row["public_desc"].'</option>';
}
else
{
echo '<option value='.$row["public_desc"].'>'.$row["public_desc"].'</option>';
}
}
?>
</select>
用于将选项值张贴到另一页的代码。
if(isset($_POST['login_btn']))
{
$desc=$_POST['users_desc'];
echo $desc;
header("location:publicUserReports.php");
}
我只想得到完整的价值。
您需要引用值
value="'.$row["public_desc"].'"
所以
echo '<option selected="selected" value="'.$row["public_desc"].'">'.$row["public_desc"].'</option>';
当你看HTML时,它必须显示
<option value="Jeju island">
而不是
<option value=Jeju island>
为了获得更多信息,"answers"之间有很大的区别如果要输出没有变量可连接的字符串/文本,则应始终使用单引号(')。
但如果你有一些变量要连接,你应该使用(可选)双引号(")。我个人更喜欢使用它,因为它更可读。
示例:
如果我只是想输出,就说:我喜欢编码。然后我使用:
echo 'I love Coding';
但当我有一些变量要连接时,我使用:
echo "I $action Coding";
现在基于您的问题:
echo "<option selected='selected' value='$row[public_desc]'>$row[public_desc]</option>";
对我来说,这更可读,也不容易出错:)