Come iniziare un Google Maps Application con PHP

October 10

Come iniziare un Google Maps Application con PHP


Per iniziare una applicazione Google Maps con PHP, è necessario creare uno script PHP che i dati di uscita necessaria per l'applicazione Google Maps in un formato XML. È quindi necessario creare la funzionalità delle applicazioni Google Maps con HTML e Javascript e chiamare lo script PHP per recuperare i dati necessari per la mappa. Opzionalmente si può incapsulare l'intera applicazione Google Maps all'interno di un file PHP, piuttosto che all'interno di un file HTML, per includere logica aggiuntiva.

istruzione

Creazione di script PHP

1 Creare una classe PHP per memorizzare le coordinate di latitudine e longitudine e una descrizione. Ad esempio, digitare:

<? Php

class coordinate {

public $latitude, $longitude, $description;

Funzione pubblica __construct ($ lat, $ lng, $ descrizione) {

$ This-> latitudine = $ lat;

$ This-> longitudine = $ GNL;

$ This-> description = $ descrizione;

}

}

2 Creare una classe PHP per memorizzare una serie di coordinate associati ad un nome identificativo e la descrizione. Aggiungere una funzione alla classe di uscita una versione XML dei dati. Ad esempio, digitare:

Coordinate class {

protected $coordinates;

Funzione pubblica __construct () {

$ This-> coordinate = array ();

}

funzione add pubblico ($ nome, $ descrizione, $ lat, $ GNL) {

$ This-> coordinate [$ name] = new coordinate ($ lat, $ lng, $ descrizione);

}

Funzione pubblica output_xml () {

$ Xml = new DOMDocument ( "1.0");

$ Node = $ XML> createElement ( "marcatori");

$ Root = $ XML> appendChild ($ node);

foreach ($ this-> coordinate da $ chiave => valore di $) {

$ Node = $ XML> createElement ( "marker");

$ Nuovo_nodo = $ root-> appendChild ($ node);

$ Newnode-> setAttribute ( "città", $ chiave);

$ Newnode-> setAttribute ( "lat", $ a valore> latitudine);

$ Newnode-> setAttribute ( "lng", $ a valore> longitudine);

$ Newnode-> setAttribute ( "disc", $ a valore> descrizione);

}

echo $ XML> saveXML ();

}

}

3 Creare il programma PHP principale per memorizzare la latitudine e longitudine per le città e di uscita selezionato una versione XML di tali dati quando il programma viene eseguito. Ad esempio, digitare:

$ città = nuove coordinate ();

$ Cities-> aggiungere ( "Nassau", "Bahamas", "25,08,333 mila", "-77,3333");

$ Cities-> aggiungere ( "Cairo", "Egitto", "36,01,667 mila", "31,2333");

$ Cities-> aggiungere ( "Paris", "Francia", "48,83,333 mila", "2,33,333 mila");

$ Cities-> aggiungere ( "Pechino", "Cina", "39,91,667 mila", "116,3333");

$ Cities-> aggiungere ( "Santiago", "Cile", "-33,40000", "-70,66667");

$ Cities-> output_xml ();

?>

Creare Google Maps Application

4 Creare un nuovo file PHP se si desidera includere la logica PHP con il programma principale. Creare le intestazioni HTML per la pagina Web. Ad esempio, digitare:

<? Php

$ Custom_name = "Steve";

?>

<! DOCTYPE html>

<Head>

<Meta name = "finestra" content = "iniziale scala = 1.0, user-scalable = no" />

<Meta http-equiv = "Content-Type" content = "text / html; charset = utf-8" />

? <Title> <? Php echo $ custom_name; ?> 'S Mappa di Internazionale Città </ title>

5 Includere l'API biblioteca javscript esterno Google Maps. Ad esempio, digitare:

<Script type = "text / javascript"> </ script>

6 Creare il programma principale Javascript. Inizia lo script con la creazione di una variabile per memorizzare la mappa. Ad esempio, digitare:

<Script type = "text / javascript">

var map;

7 Creare una funzione per visualizzare la mappa sullo schermo. Inizia definendo le opzioni per la mappa. Creare la mappa e creare una variabile per la finestra pop-up informativo. Ad esempio, digitare:

function create() {

var newYork = new google.maps.LatLng (40,69847032728747, -73,9514422416687);

var mapOptions = {zoom: 13, Centro: newYork, mapTypeId: "tabella di marcia"};

map = new google.maps.Map (document.getElementById ( "mappa"), mapOptions);

infowindow = new google.maps.InfoWindow;

8 Chiamare una funzione che in modo asincrono recuperare i dati dal file PHP. Creare la funzione di callback che elaborerà i dati e tracciare le icone sulla mappa. Ad esempio, digitare:

downloadPHPData("coordinates.php", function(data) {

var xml = data.responseXML;

marcatori var = xml.documentElement.getElementsByTagName ( "marker");

for (var i = 0; i & lt; markers.length; i ++) {

var city = marcatori [i] .getAttribute ( "città");

var point = new google.maps.LatLng (parseFloat (marcatori [i] .getAttribute ( "lat")), parseFloat (marcatori [i] .getAttribute ( "lng")));

var html = città + "," + marcatori [i] .getAttribute ( "disc");

var marcatore = new google.maps.Marker ({map, cartina, la posizione: punto, titolo: city});

bindInfoWindow (marcatore, carta, infowindow, html);

}

});

}

9 Creare la funzione per recuperare in modo asincrono i dati e passare alla funzione di callback. Ad esempio, digitare:

function downloadPHPData(URL, callback) {

richiesta var = window.ActiveXObject? new ActiveXObject ( "Microsoft.XMLHTTP"): new XMLHttpRequest;

request.onreadystatechange = function () {

if (request.readyState == 4) {

request.onreadystatechange = DoNothing;

callback (richiesta, request.status);

}

};

request.open ( 'GET', URL, true);

request.send (null);

}

funzione DoNothing () {

}

10 Creare la funzione di pop-up della finestra informativa quando un marcatore viene cliccato. Ad esempio, digitare:

function bindInfoWindow(marker, map, infoWindow, html) {

google.maps.event.addListener (marcatore, "click", function () {

infoWindow.setContent (html);

infoWindow.open (mappa, marcatore);

});

}

11 Chiudere il tag script, chiudere il tag head, e creare il codice HTML principale per stabilire la "div" per la mappa e per lanciare il "creare" funzione quando la pagina viene caricata. Ad esempio, digitare:

</ Script>

</ Head>

<Body onload = "Create ()">

&lt;div id="map" style="width:800px; height:800px">&lt;/div>

</ Body>

</ Html>