我想将依赖项下拉列表的“名称”插入数据库中,而不是将下拉列表的“ id”插入数据库中。请帮助我,谢谢。
这是我的代码:
<select class ="form-control" id="prov" name="prov" onChange="getProv()">
<option selected hidden>-- Select Province --</option>
<?php
$query = mysqli_query($conn,"SELECT * FROM province");
if(mysqli_num_rows($query)>0){
while($row = mysqli_fetch_array($query)){
?>
<option value="<?php echo $row['name']; ?>" data-provID="<?php echo $row['id']; ?>" ><?php echo $row['name']; ?></option>
<?php }}
else{
echo '<option value="">Province not available</option>';
} ?>
</select>
Ajax脚本代码:
<script>
function() {
var prov_id = $('#prov option:selected').data( 'provID' );
$.ajax({
type: "POST",
url: "ajaxpro.php",
data: 'prov_id='+prov_id,
success: function(response){
$('#mun').html(response);
}
});
}
</script>
Ajax.PHP
<?php include_once 'db_cert.php';
if(isset($_POST['prov_id']) && !empty($_POST['prov_id'])){
$sql = mysqli_query($conn, "SELECT * FROM `mun` WHERE
`prov_id`='".$_POST['prov_id']."'");
if(mysqli_num_rows($sql)>0){
while($muns=mysqli_fetch_array($sql))
{ ?>
<option value ='<?php echo $muns['id']; ?>'><?php echo $muns['name']; ?>
</option>
<?php }
}
else
{
echo '<option value="">City/Municipality not available</option>';
}
}
?>
谢谢
答案 0 :(得分:0)
让我们看看我是否了解您要执行的操作:
您有一个带有带有省份选择框的表单,当选择了一个省份时,您使用所选省份的ID来获取该省份中的城市(通过Ajax),然后可能会将其添加到另一个选择框中形式?在提交表单时,您要提交所选城市的名称,而不是ID?
在这种情况下,您想在Ajax.PHP中更改此行
<option value ='<?php echo $muns['id']; ?>'><?php echo $muns['name']; ?>
到
<option value ='<?php echo $muns['name']; ?>'><?php echo $muns['name']; ?>