无法从PHP、SQL中的下拉列表中获取选定值
我有以下代码:无法从PHP、SQL中的下拉列表中获取选定值,php,html,mysql,Php,Html,Mysql,我有以下代码: <form action="MovieDatabase.php" method='post'> <select name="director_movie"> <?php $sql = mysqli_query($mysql, "SELECT DISTINCT Title FROM Film2"); while ($row = $sql->fetch_assoc()){ ?>
<form action="MovieDatabase.php" method='post'>
<select name="director_movie">
<?php
$sql = mysqli_query($mysql, "SELECT DISTINCT Title FROM Film2");
while ($row = $sql->fetch_assoc()){
?>
<option value="director_movie1" id="film_id"><?php echo $row['Title']; ?></option>
<?php
// close while loop
}
?>
</form>
当我尝试回应它时,它只显示选项值direcotru movie1,这不是我想要的。在本例中,我想获得电影的标题,它是从下拉列表中选择的
我做错了什么 您正在硬编码您的值,并且想知道为什么您的表单提交硬编码的值 在您的选择中显示的电影标题正是用户可以看到的。您的表单提交您投入的价值=
另一个注意事项是:当您希望基于选定的标题获取电影信息时,使用除字符/数字以外的任何内容作为标题时,使用标题作为字段可能会导致问题。最好使用电影的ID您正在硬编码您的值,并且想知道表单为什么提交硬编码值 在您的选择中显示的电影标题正是用户可以看到的。您的表单提交您投入的价值= 另一个注意事项是:当您希望基于选定的标题获取电影信息时,使用除字符/数字以外的任何内容作为标题时,使用标题作为字段可能会导致问题。最好使用电影的ID第一:将value属性更改为value= 第二:Id属性对于每个元素都是唯一的。将其从选项标签id=胶片id中移除 第一:将您的value属性更改为value= 第二:Id属性对于每个元素都是唯一的。将其从选项标签id=胶片id中移除 换行
<option value="director_movie1" id="film_id"><?php echo $row['Title']; ?></option>
与
现在您将获得动态值,不同的选项也不能有相同的值,用于所有线下的更改
<option value="director_movie1" id="film_id"><?php echo $row['Title']; ?></option>
与
现在您将获得动态值不同的选项也不能对所有id具有相同的值您在这行代码中为每个选项硬编码了相同的值:-
<option value="director_movie1" id="film_id"><?php echo $row['Title']; ?></option>
这就是为什么你每次都得到相同的价值
将其更改为以下内容:-
现在它可以正常工作了
注意:-每个HTML元素的id都必须是唯一的,因此请删除重复的id。我认为您不需要这样做您在这行代码中为每个选项硬编码了相同的值:-
<option value="director_movie1" id="film_id"><?php echo $row['Title']; ?></option>
这就是为什么你每次都得到相同的价值
将其更改为以下内容:-
现在它可以正常工作了
注意:-每个HTML元素的id都必须是唯一的,因此删除重复的id我认为您不需要更改此id
<option value="director_movie1" id="film_id"><?php echo $row['Title']; ?></option>
到
改变这个
<option value="director_movie1" id="film_id"><?php echo $row['Title']; ?></option>
到
您所有的选择都具有相同的价值导演电影1。使用从数据库中为每一行提取的ID。当您使用$\u POST['some\u name']时。。您可以得到value=。。。如果您想要电影标题,则设置值=$row['title'],所有选项的值都相同director\u movie1。使用从数据库中为每一行提取的ID。当您使用$\u POST['some\u name']时。。您可以得到value=。。。如果您想要电影标题,那么设置值=$row['title']是的,这很有意义。谢谢@anthony很高兴帮助您。干杯:@AlivetoDie我已经成功地在下拉列表中获取了client_name&现在我想根据所选的下拉列表值在文本框中显示client_village。如何?@shubhamshah,通过适当的输入和代码努力提出一个新问题。在评论中提出新问题不是一个好主意。你可以参考我的链接,如果我有时间,我会尝试回答你那里。Thanks@AlivetoDie这是:是的,有道理。谢谢@anthony很高兴帮助您。干杯:@AlivetoDie我已经成功地在下拉列表中获取了client_name&现在我想根据所选的下拉列表值在文本框中显示client_village。如何?@shubhamshah,通过适当的输入和代码努力提出一个新问题。在评论中提出新问题不是一个好主意。你可以参考我的链接,如果我有时间,我会尝试回答你那里。Thanks@AlivetoDie这是:
<option value="director_movie1" id="film_id"><?php echo $row['Title']; ?></option>
<option value=<?php echo $row['Title']; ?> id="film_id"><?php echo $row['Title']; ?></option>