【发布时间】:2017-04-24 04:43:38
【问题描述】:
您好,我有一个地址字段,仅从法国获取地址。 我希望将该地址与经度和纬度一起存储在我的数据库中。有没有办法做到这一点。我正在尝试几个代码,但没有一个有效。
这是我的代码
<form id="contact" action="send.php" method="post"><br>
<h2>Formulaire de contact</h2>
<div id="locationField" required>
<input id="autocomplete" placeholder="Adresse"
onFocus="geolocate()" type="text" name="address" required="required"></input>
</div><br>
<input type="hidden" name="latitude" id="at" placeholder="Latitude" class="form-control" required="required"/>
<input type="hidden" name="longitude" id="lng" placeholder="Longitude" class="form-control" required="required"/>
<input type="submit" name="submit" value="submit" class="button"/>
<script>
function initAutocomplete() {
autocomplete = new
google.maps.places.Autocomplete(
/** @type {!HTMLInputElement}
*/(document.getElementById('autocomplete')),
{types: ['geocode'], componentRestrictions: {country: 'fr'}});
autocomplete.addListener('place_changed', fillInAddress);
}
document.getElementById('latitude').value = place.geometry.location.lat();
document.getElementById('longitude').value = place.geometry.location.lng();
</script>
<script src="https://maps.googleapis.com/maps/api/js?input=Paris&types=geocode&key=xxxxxxxxxxxxxxxxxxxxxx&libraries=places&callback=initAutocomplete"
async defer></script>
</form>
<?php
if (isset($_POST["submit"])) {
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "web_contact";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "INSERT INTO customer1(address,latitude,longitude)
values('" . $_POST["address"] . "','" . $_POST["latitude"] . "','" . $_POST["longitude"] . "')";
if (mysqli_query($conn, $sql)) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "" . mysqli_error($conn);
}
}
【问题讨论】:
-
请修正代码格式
-
并删除私有 API 密钥