1
Ich versuche googlemaps API in eine Benutzerprofilregistrierungsseite zu verwenden. Teil des CodesPHP Stream googlemaps API kann nicht geladen werden
if(isset($_POST['submit']))
{
$address = mysqli_real_escape_string($_POST['address']);
}
.
.
.
if($address !=''){
$address_code = urlencode($row['address']);
$request_url = "http://maps.googleapis.com/maps/api/geocode/xml?address=".$address_code."&sensor=true";
$xml = simplexml_load_file($request_url) or die("url not loading");
$status = $xml->status;
if ($status=="OK"){
$lat = $xml->result->geometry->location->lat;
$lng = $xml->result->geometry->location->lng;
$latlng = "$lat,$lng";
}
$sql1 = "INSERT INTO users(lat,lng) VALUES('$lat','$lng')";
mysqli_query($database,$sql) or die(mysqli_error($database));
.
.
.
Wenn ich die Registrierung senden, es gibt mir einen Fehler "[function.simplexml-load-Datei]: failed to open stream". Es scheint, dass der API-Aufruf den Inhalt der 'Adresse' nicht lesen kann.
** WARNUNG **: Bei der Verwendung von 'mysqli' Sie [parametrisierte Abfragen] verwenden sollten (http://php.net/manual/en/mysqli.quickstart .prepared-statements.php) und ['bind_param'] (http://php.net/manual/en/mysqli-stmt.bind-param.php), um Benutzerdaten zu Ihrer Abfrage hinzuzufügen. ** Verwenden Sie ** NICHT ** manuelles Escapen und String-Interpolation oder Verkettung, um dies zu erreichen, weil Sie schwerwiegende [SQL-Injektionsfehler] (http://bobby-tables.com/) erzeugen werden, wenn Sie jemals vergessen, etwas richtig zu entkommen. – tadman
Sie müssen $ address_code Variable urlencode. nicht mysqli_real_escape_string – Faraz