Wenige Tage versuche ich, Problem zu lösen, aber kein Glück. Problem ist weiter:Ajax PHP abhängige Dropdown-Auswahl - Wie Name der Stadt statt ID in Datenbank (senden von Daten)?
- Web-Formular mit abhängigen ausgewählten Drop-Down-Box, wo Benutzer seine Ort, PLZ und Straße und diese Arbeit aber auswählen kann.
- Wenn ich Formular in meiner Datenbank einreichen
city_name
(Text) - nurcity_id
(Anzahl/Wert).
Also, Frage ist - Wie city_name
in der Datenbank zu buchen? Benutzer ist aus Rom und ich Rom (Text) ist nicht city_id
(Nummer) eingereicht.
Select-Eingang:
<div class="form-group">
<label class="col-md-4 control-label" for="grad">City:*</label>
<div class="col-md-4">
<select type="text" name="city_name" id="city_name" class="form-control input-sm">
<option value=""></option>
<option value="999">---Enter city yourself---</option>
<?php $sql_query="SELECT * FROM city_table order by city_id asc";
$result=mysqli_query($dbconfig,$sql_query);
while($row=mysqli_fetch_array($result,MYSQLI_ASSOC)){
?>
<option value="<?php echo $row['city_id'].'_'.$row['city_name'];?>"><?php echo $row['city_name'];?></option>
<?php }?>
</select>
</div>
</div>
<!-- Select Basic -->
<div class="form-group">
<label class="col-md-4 control-label" for="post_no">ZIP code:*</label>
<div class="col-md-4">
<select name="zip_name" id="zip_name" class="form-control input-sm" onchange="recalculate_price();">
</select>
</div>
</div>
<!-- Select Basic -->
<div class="form-group">
<label class="col-md-4 control-label" for="address">Street:*</label>
<div class="col-md-4">
<select name="street_name" id="street_name" class="form-control input-sm" onchange="recalculate_price();">
</select>
</div>
</div>
get_zip_php
<?php
include('db_config.php');
if($_POST['id'])
{
$id=$_POST['id'];
$sql_query="SELECT * FROM zip_table where city_id='$id' order by zip_name asc";
$result=mysqli_query($dbconfig,$sql_query);
?>
<option selected="selected">Select ZIP code :</option><?php
while($row=mysqli_fetch_array($result,MYSQLI_ASSOC))
{
?>
<option value="<?php echo $row['zip_id']; ?>-<?php echo $row['limousine']; ?>-<?php echo $row['kombi']; ?>-<?php echo $row['mini_van']; ?>"><?php echo $row['zip_name']; ?></option>
<?php
}
}
?>
get_street_php
<?php
include('db_config.php');
if($_POST['id'])
{
$id=$_POST['id'];
$sql_query="SELECT * FROM street_table where zip_id='$id' order by street_name asc";
$result=mysqli_query($dbconfig,$sql_query);
?>
<option selected="selected">Select street please :</option><?php
while($row=mysqli_fetch_array($result,MYSQLI_ASSOC))
{
?>
<option value="<?php echo $row['street_id']; ?>"><?php echo $row['street_name']; ?></option>
<?php
}
}
?>
Ajax:
<script>
$(document).ready(function()
{
$("#city_name").change(function()
{
var id=$(this).val();
var data = 'id='+ id;
$.ajax
({
type: "POST",
url: "get_zip.php",
data: data,
cache: false,
success: function(html)
{
$("#zip_name").html(html);
recalculate_price();
}
});
});
$("#zip_name").change(function()
{
var id=$(this).val();
var data = 'id='+ id;
$.ajax
({
type: "POST",
url: "get_street.php",
data: data,
cache: false,
success: function(html)
{
$("#street_name").html(html);
recalculate_price();
}
});
});
});
</script>
Wenn ich einige Änderungen an "Select city part" (I m beginner and really I
m in all dem verloren) mache, kann ich den zip nicht passieren.
Also, bitte sagen Sie mir, wo alle Änderungen vorgenommen werden, um alle diese Dinge passieren und city_name
, zip (Name ... Ich mache es als "xxxx - Stadt") und Straßenname. Bitte helfen Sie mir, ich habe gegoogelt und hier ein paar Tage über Probleme gelesen und kann nicht weiter an meinem Projekt arbeiten, bis ich das repariere. Danke im Voraus.
verketten die ID mit dem Wert wie diese mit Trennzeichen wie diese – JYoThI
Danke jothi aber ist möglich Nummer (id) irgendwie aus 6_Rom entfernen und nur Rom posten? – Falcon
in PHP verwenden $ SS = explodieren ('_', '6_Rome'); so und print_r ($ ss); echo $ ss [0]; – JYoThI