我能够使用我的数据库中的结果填充下拉问题html表单。但是,我选择的项目是一个名称,虽然在菜单选项中显示名字和姓氏,但在提交时,只显示第一个名称。
$sql = "SELECT DISTINCT name FROM communications";
$result = mysql_query($sql);
echo "<select name='client1'>";
while($row = mysql_fetch_array($result)) {
echo "<option value=".$row['name'].">";
echo $row['name'];
echo "</option>";}
echo "</select>";?>
<input type="submit" name= "submit2" value="Show">
<input type="hidden" name= "submit3" value="Submit">
</form>
<?php
if(isset($_POST['submit3']))
{ echo $_POST['client1']; }
client1仅回显第一个名称,而不是第二个名称。无法弄清楚原因。
答案 0 :(得分:1)
您需要在select option value中引用给定的字符串as,
while($row = mysql_fetch_array($result)) {
$name = $row['name'];
echo "<option value='".$name."'>";
^ ^
Waring: Please, don't use mysql_*
functions in new code。它们不再被维护and are officially deprecated。请参阅red box?转而了解prepared statements,并使用PDO或MySQLi - this article将帮助您确定哪个。如果您选择PDO here is a good tutorial。