<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Google Maps e PHP</title>
	<atom:link href="http://phpgooglemap.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://phpgooglemap.wordpress.com</link>
	<description>Come utilizzare le mappe di Google in PHP</description>
	<lastBuildDate>Tue, 02 Aug 2011 09:43:43 +0000</lastBuildDate>
	<language>it</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='phpgooglemap.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Google Maps e PHP</title>
		<link>http://phpgooglemap.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://phpgooglemap.wordpress.com/osd.xml" title="Google Maps e PHP" />
	<atom:link rel='hub' href='http://phpgooglemap.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Personalizzare il testo dell&#8217;Info Window</title>
		<link>http://phpgooglemap.wordpress.com/2009/12/24/personalizzare-il-testo-dellinfo-window/</link>
		<comments>http://phpgooglemap.wordpress.com/2009/12/24/personalizzare-il-testo-dellinfo-window/#comments</comments>
		<pubDate>Thu, 24 Dec 2009 11:50:05 +0000</pubDate>
		<dc:creator>paooolino</dc:creator>
				<category><![CDATA[Diario]]></category>
		<category><![CDATA[Funzionalità]]></category>

		<guid isPermaLink="false">http://phpgooglemap.wordpress.com/?p=87</guid>
		<description><![CDATA[Come promesso, vediamo come rendere parametrico il testo dell&#8217;Info Window presente nel marker. Per prima cosa, dichiariamo la variabile membro $infoText nella classe e assegnamole un valore predefinito nel costruttore. Scriviamo anche il metodo setInfoText in modo da poter impostare il testo da fuori: Ho introdotto una chiamata a str_replace di php in modo da [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=87&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Come promesso, vediamo come rendere parametrico il testo dell&#8217;Info Window presente nel marker.</p>
<p>Per prima cosa, dichiariamo la variabile membro <strong>$infoText</strong> nella classe e assegnamole un valore predefinito nel costruttore.</p>
<p><pre class="brush: php; highlight: [10,20];">
class PhpGoogleMap {
	// variabili membro della classe
	private $apikey;
	private $dimX;
	private $dimY;
	private $latitude;
	private $longitude;
	private $address;
	private $zoom;
	private $infoText;
	
	function __construct($_apikey){
		$this-&gt;apikey = $_apikey;
		$this-&gt;dimX = 500;
		$this-&gt;dimY = 300;
		$this-&gt;latitude = 0;
		$this-&gt;longitude = 0;
		$this-&gt;address = &quot;&quot;;
		$this-&gt;zoom = 13;
		$this-&gt;infoText = &quot;Centro della mappa.&quot;;
	}
</pre></p>
<p>Scriviamo anche il metodo setInfoText in modo da poter impostare il testo da fuori:</p>
<p><pre class="brush: php;">
	function setInfoText($HTML){
		$this-&gt;infoText = str_replace(&quot;'&quot;, &quot;\'&quot;, $HTML);
	}
</pre></p>
<p>Ho introdotto una chiamata a str_replace di php in modo da aggiungere davanti ai caratteri apice singolo &#8221; &#8216; &#8221; il carattere di escape &#8221; \ &#8221; poichè se il testo dovesse contenere apici, questi andrebbero a creare conflitto con l&#8217;apertura e la chiusura delle stringhe nel codice JavaScript.</p>
<p>L&#8217;ultimo passaggio è quello di andare ad inserire nel codice JavaScript la nostra variabile di classe $infoText:</p>
<p><pre class="brush: php; highlight: [14,23];">
		// assegna alla variabile $JScenterMap il codice necessario a centrare la mappa
		if($this-&gt;address!=&quot;&quot;){
			$JScenterMap = &quot;
				var geocoder = new GClientGeocoder();
				geocoder.getLatLng(
					'&quot;.$this-&gt;address.&quot;',
					function(point) {
						if (!point) {
							alert('&quot;.$this-&gt;address.&quot;' + \&quot; not found\&quot;);
						} else {
							point;
							map.setCenter(point, &quot;.$this-&gt;zoom.&quot;);
							
							var marker = createMarker(point, '&quot;.$this-&gt;infoText.&quot;');
							map.addOverlay(marker);							
						}
					});
			&quot;;
		} else {
			$JScenterMap = &quot;
				map.setCenter(new GLatLng(&quot;.$this-&gt;latitude.&quot;, &quot;.$this-&gt;longitude.&quot;), &quot;.$this-&gt;zoom.&quot;);
					
				var marker = createMarker(new GLatLng(&quot;.$this-&gt;latitude.&quot;, &quot;.$this-&gt;longitude.&quot;), '&quot;.$this-&gt;infoText.&quot;');
				map.addOverlay(marker);
			&quot;;
		}
</pre>   </p>
<p>Provate la pagina. C&#8217;è bisogno che vi dica come impostare un testo HTML dalla vostra pagina base? <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/phpgooglemap.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/phpgooglemap.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/phpgooglemap.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/phpgooglemap.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/phpgooglemap.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/phpgooglemap.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/phpgooglemap.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/phpgooglemap.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/phpgooglemap.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/phpgooglemap.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/phpgooglemap.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/phpgooglemap.wordpress.com/87/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/phpgooglemap.wordpress.com/87/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/phpgooglemap.wordpress.com/87/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=87&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://phpgooglemap.wordpress.com/2009/12/24/personalizzare-il-testo-dellinfo-window/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13363395950607a00a8697ef9cce2ad0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paooolino</media:title>
		</media:content>
	</item>
		<item>
		<title>Marker ed Info Window al centro della Google Map</title>
		<link>http://phpgooglemap.wordpress.com/2009/12/24/marker-ed-info-window-al-centro-della-google-map/</link>
		<comments>http://phpgooglemap.wordpress.com/2009/12/24/marker-ed-info-window-al-centro-della-google-map/#comments</comments>
		<pubDate>Thu, 24 Dec 2009 11:00:40 +0000</pubDate>
		<dc:creator>paooolino</dc:creator>
				<category><![CDATA[Diario]]></category>
		<category><![CDATA[Funzionalità]]></category>

		<guid isPermaLink="false">http://phpgooglemap.wordpress.com/?p=82</guid>
		<description><![CDATA[I markers identificano un punto preciso sulla mappa, servendosi della classica icona rossa a punta che probabilmente vi sarà famigliare. I markers, nell&#8217;API di Google Maps, sono oggetti di tipo GMarker. Associato ad un marker vi è solitamente un fumetto contenente alcune informazioni sulla località che viene visualizzato una volta cliccato il marker. Si tratta [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=82&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I <strong>markers </strong>identificano un punto preciso sulla mappa, servendosi della classica icona rossa a punta che probabilmente vi sarà famigliare.</p>
<p>I markers, nell&#8217;API di Google Maps, sono oggetti di tipo <strong>GMarker</strong>.</p>
<p>Associato ad un marker vi è solitamente un fumetto contenente alcune informazioni sulla località che viene visualizzato una volta cliccato il marker. Si tratta di un Info Window, identificato nell&#8217;API da un oggetto di tipo <strong>GInfoWindow</strong>.</p>
<p>Sia i markers che l&#8217;Info Window sono derivati da un&#8217;interfaccia comune, <strong>GOverlay</strong>. Gli overlay sono semplicemente degli elementi che appaiono sopra la mappa, associati a certe coordinate della stessa per cui scorrono con essa. I metodi <strong>addOverlay </strong>e <strong>removeOverlay </strong>servono ad aggiungere/rimuovere un overlay sulla mappa, sia esso un marker o un&#8217;info window o altro.</p>
<p>Aggiungiamo nel codice Javascript una funzione che, dato un punto ed un testo HTML, crea l&#8217;oggetto marker e l&#8217;info window associata. Il codice JS è il seguente:</p>
<p><pre class="brush: jscript;">
      function createMarker(point,html) {
        var marker = new GMarker(point);
        GEvent.addListener(marker, &quot;click&quot;, function() {
          marker.openInfoWindowHtml(html);
        });
        return marker;
      }
</pre></p>
<p>Come vedete è stato inserito un <strong>listener </strong>(ascoltatore) di eventi, ovvero una funzione che viene attivata al click sul marker. La funzione si occupa di <strong>aprire l&#8217;infowindow</strong>. L&#8217;oggetto <strong>GInfoWindow </strong>non viene creato esplicitamente poichè si tratta di un particolare oggetto che viene creato <strong>automaticamente </strong>insieme alla mappa stessa. In una mappa esiste <strong>una sola info window</strong>, il cui contenuto può cambiare di volta in volta.</p>
<p>Vediamo ora come inserire questo codice nella nostra classe. Direi che è sensato posizionarlo all&#8217;inizio del pezzo di codice che si occupa di inizializzare la mappa:</p>
<p><pre class="brush: php; highlight: [3,4,5,6,7,8,9,10];">
		// inizializza la mappa
		echo &quot;
			&lt;script type=\&quot;text/javascript\&quot;&gt;
				function createMarker(point,html) {
					var marker = new GMarker(point);
					GEvent.addListener(marker, \&quot;click\&quot;, function() {
						marker.openInfoWindowHtml(html);
					});
					return marker;
				}

				window.onload = initialize;
				window.onunload = GUnload;

				function initialize() {
					if (GBrowserIsCompatible()) {
						var map = new GMap2(document.getElementById(\&quot;map_canvas\&quot;));
						$JScenterMap
						map.setUIToDefault();
					}
				}
			&lt;/script&gt;
		&quot;;
</pre></p>
<p>Ora dobbiamo richiamare la funzione. In questo caso dobbiamo aprire una parentesi, poichè ci dobbiamo ricordare che la nostra classe PHP ha a disposizione le coordinate del punto solamente nel caso in cui non utilizziamo la geolocalizzazione. Infatti passando alla mappa un indirizzo, latitudine e longitudine sono ricavate direttamente dal codice Javascript.</p>
<p>La creazione del marker è quindi da inserire in due punti differenti del codice. Il primo, riguarda proprio il caso della geolocalizzazione, in cui abbiamo a disposizione il punto all&#8217;interno della funzione che viene attivata dal geocoder:</p>
<p><pre class="brush: php; highlight: [14,15];">
		// assegna alla variabile $JScenterMap il codice necessario a centrare la mappa
		if($this-&gt;address!=&quot;&quot;){
			$JScenterMap = &quot;
				var geocoder = new GClientGeocoder();
				geocoder.getLatLng(
					'&quot;.$this-&gt;address.&quot;',
					function(point) {
						if (!point) {
							alert('&quot;.$this-&gt;address.&quot;' + \&quot; not found\&quot;);
						} else {
							point;
							map.setCenter(point, 13);

							var marker = createMarker(point, 'Hello World!');
							map.addOverlay(marker);
						}
					});
			&quot;;
...
</pre></p>
<p>di seguito invece occupiamoci del caso in cui abbiamo le coordinate memorizzate nella classe, avendole passate dal PHP:</p>
<p><pre class="brush: php;">
...
		} else {
			$JScenterMap = &quot;
				map.setCenter(new GLatLng(&quot;.$this-&gt;latitude.&quot;, &quot;.$this-&gt;longitude.&quot;), 13);

				var marker = createMarker(new GLatLng(&quot;.$this-&gt;latitude.&quot;, &quot;.$this-&gt;longitude.&quot;), 'Hello World');
				map.addOverlay(marker);
			&quot;;
		}
</pre></p>
<p>Abbiamo creato in questo modo un <strong>marker </strong>impostato al centro della mappa, capace di aprire una <strong>Info Window</strong> contenente un messaggio. Il prossimo passo sarà quello di permetterci di personalizzare il messaggio, rendendolo parametrico attraverso una procedura che ormai dovrebbe essere nota.</p>
<p>Proseguiamo!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/phpgooglemap.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/phpgooglemap.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/phpgooglemap.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/phpgooglemap.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/phpgooglemap.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/phpgooglemap.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/phpgooglemap.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/phpgooglemap.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/phpgooglemap.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/phpgooglemap.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/phpgooglemap.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/phpgooglemap.wordpress.com/82/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/phpgooglemap.wordpress.com/82/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/phpgooglemap.wordpress.com/82/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=82&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://phpgooglemap.wordpress.com/2009/12/24/marker-ed-info-window-al-centro-della-google-map/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13363395950607a00a8697ef9cce2ad0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paooolino</media:title>
		</media:content>
	</item>
		<item>
		<title>Zoom e personalizzazione: il codice completo</title>
		<link>http://phpgooglemap.wordpress.com/2009/12/21/zoom-e-personalizzazione-il-codice-completo/</link>
		<comments>http://phpgooglemap.wordpress.com/2009/12/21/zoom-e-personalizzazione-il-codice-completo/#comments</comments>
		<pubDate>Mon, 21 Dec 2009 10:50:14 +0000</pubDate>
		<dc:creator>paooolino</dc:creator>
				<category><![CDATA[Diario]]></category>
		<category><![CDATA[Personalizzazione]]></category>

		<guid isPermaLink="false">http://phpgooglemap.wordpress.com/?p=77</guid>
		<description><![CDATA[Manca ancora una cosa da personalizzare, ovvero il livello di zoom della mappa. Nel nostro esempio è impostato a 13, ma può andare da 0 (il livello di zoom più ampio) a 19. C&#8217;è davvero bisogno che vi dica in dettaglio come fare? Suvvia, abbiamo fatto cose ben più difficili in questo capitolo. Si tratta [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=77&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Manca ancora una cosa da personalizzare, ovvero il livello di zoom della mappa. Nel nostro esempio è impostato a 13, ma può andare da 0 (il livello di zoom più ampio) a 19.</p>
<p>C&#8217;è davvero bisogno che vi dica in dettaglio come fare? Suvvia, abbiamo fatto cose ben più difficili in questo capitolo. Si tratta solo di aggiungere una variabile $zoom ed un metodo setZoom alla classe.</p>
<p>Ho inserito un controllo nel caso in cui si imposti lo zoom fuori dal range dei valori 0-19.</p>
<p>Ecco il codice completo della classe, in cui evidenzio le righe di codice aggiunte o modificate per lo zoom:</p>
<p><pre class="brush: php; highlight: [11,20,39,44,85,86,87,88,89,90,91,92,93];">
&lt;?php

class PhpGoogleMap {
	// variabili membro della classe
	private $apikey;
	private $dimX;
	private $dimY;
	private $latitude;
	private $longitude;
	private $address;
	private $zoom;

	function __construct($_apikey){
		$this-&gt;apikey = $_apikey;
		$this-&gt;dimX = 500;
		$this-&gt;dimY = 300;
		$this-&gt;latitude = 0;
		$this-&gt;longitude = 0;
		$this-&gt;address = &quot;&quot;;
		$this-&gt;zoom = 13;
	}

	function renderJS(){
		echo &quot;
			&lt;script src=\&quot;http://maps.google.com/maps?file=api&amp;v=2&amp;key=&quot;. $this-&gt;apikey .&quot;&amp;sensor=false\&quot; type=\&quot;text/javascript\&quot;&gt;
			&lt;/script&gt;
		&quot;;

		// assegna alla variabile $JScenterMap il codice necessario a centrare la mappa
		if($this-&gt;address!=&quot;&quot;){
			$JScenterMap = &quot;
				var geocoder = new GClientGeocoder();
				geocoder.getLatLng(
					'&quot;.$this-&gt;address.&quot;',
					function(point) {
						if (!point) {
							alert('&quot;.$this-&gt;address.&quot;' + \&quot; not found\&quot;);
						} else {
							map.setCenter(point, &quot;.$this-&gt;zoom.&quot;);
						}
					});
			&quot;;
		} else {
			$JScenterMap = &quot;map.setCenter(new GLatLng(&quot;.$this-&gt;latitude.&quot;, &quot;.$this-&gt;longitude.&quot;), &quot;.$this-&gt;zoom.&quot;);&quot;;
		}

		// inizializza la mappa
		echo &quot;
			&lt;script type=\&quot;text/javascript\&quot;&gt;
				window.onload = initialize;
				window.onunload = GUnload;

				function initialize() {
					if (GBrowserIsCompatible()) {
						var map = new GMap2(document.getElementById(\&quot;map_canvas\&quot;));
						$JScenterMap
						map.setUIToDefault();
					}
				}
			&lt;/script&gt;
		&quot;;

	}

	function renderHTML(){
		echo &quot;&lt;div id=\&quot;map_canvas\&quot; style=\&quot;width: &quot;.$this-&gt;dimX.&quot;px; height: &quot;.$this-&gt;dimY.&quot;px\&quot;&gt;&lt;/div&gt;&quot;;
	}

	function setDimensions($x, $y){
		$this-&gt;dimX = $x;
		$this-&gt;dimY = $y;
	}

	function setCoordinates($lat, $long){
		$this-&gt;latitude = $lat;
		$this-&gt;longitude = $long;
		$this-&gt;address = &quot;&quot;;

	}

	function setAddress($address){
		$this-&gt;address = $address;
	}

	function setZoom($zoom){
		if($zoom&gt;19){
			$zoom = 19;
		}
		if($zoom&lt;0){
			$zoom = 0;
		}
		$this-&gt;zoom = $zoom;
	}
}

?&gt;
</pre></p>
<p>Evito di riproporvi il codice del file base.php, ormai avreste aver capito il funzionamento. Provate ad includere una mappa in una vostra pagina internet, se avete un sito personale.</p>
<p>La classe è ora completamente parametrizzata nelle sue funzioni base ed è già utilizzabile. I prossimi passi consisteranno nell&#8217;aggiunta di nuove funzionalità e caratteristiche. A presto!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/phpgooglemap.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/phpgooglemap.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/phpgooglemap.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/phpgooglemap.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/phpgooglemap.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/phpgooglemap.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/phpgooglemap.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/phpgooglemap.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/phpgooglemap.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/phpgooglemap.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/phpgooglemap.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/phpgooglemap.wordpress.com/77/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/phpgooglemap.wordpress.com/77/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/phpgooglemap.wordpress.com/77/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=77&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://phpgooglemap.wordpress.com/2009/12/21/zoom-e-personalizzazione-il-codice-completo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13363395950607a00a8697ef9cce2ad0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paooolino</media:title>
		</media:content>
	</item>
		<item>
		<title>Geocoding</title>
		<link>http://phpgooglemap.wordpress.com/2009/12/20/geocoding/</link>
		<comments>http://phpgooglemap.wordpress.com/2009/12/20/geocoding/#comments</comments>
		<pubDate>Sun, 20 Dec 2009 15:02:47 +0000</pubDate>
		<dc:creator>paooolino</dc:creator>
				<category><![CDATA[Diario]]></category>
		<category><![CDATA[Personalizzazione]]></category>

		<guid isPermaLink="false">http://phpgooglemap.wordpress.com/?p=74</guid>
		<description><![CDATA[Aggiungiamo ora una funzionalità piuttosto interessante, ovvero la possibilità di passare alla nostra classe un indirizzo in forma testuale che può essere del tipo: Piazza Duomo Milano Trieste Innsbruck Colosseo e di vederci restituita la mappa posizionata esattamente nel punto specificato. Questa &#8220;Magia&#8221; è possibile grazie al servizio Geocoding di Google Maps, che consente di [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=74&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Aggiungiamo ora una funzionalità piuttosto interessante, ovvero la possibilità di passare alla nostra classe un indirizzo in forma testuale che può essere del tipo:</p>
<ul>
<li>Piazza Duomo Milano</li>
<li>Trieste</li>
<li>Innsbruck</li>
<li>Colosseo</li>
</ul>
<p>e di vederci restituita la mappa posizionata esattamente nel punto specificato.</p>
<p>Questa &#8220;Magia&#8221; è possibile grazie al servizio <strong>Geocoding </strong>di Google Maps, che consente di ottenere le coordinate geografiche (latitudine e longitudine) di un punto descritto in modo testuale.</p>
<p>Inizieremo quindi a dichiarare una variabile membro della classe chiamata $address, in modo da poter memorizzare l&#8217;indirizzo. Nel costruttore lo inizializzeremo a stringa vuota.</p>
<p><pre class="brush: php; highlight: [8,16];">
class PhpGoogleMap {
	// variabili membro della classe
	private $apikey;
	private $dimX;
	private $dimY;
	private $latitude;
	private $longitude;
	private $address;

	function __construct($_apikey){
		$this-&gt;apikey = $_apikey;
		$this-&gt;dimX = 500;
		$this-&gt;dimY = 300;
		$this-&gt;latitude = 0;
		$this-&gt;longitude = 0;
		$this-&gt;address = &quot;&quot;;
	}
</pre></p>
<p>Scriviamo la funzione setAddress, in modo da poter impostare l&#8217;indirizzo da codice PHP:</p>
<p><pre class="brush: php;">
	function setAddress($address){
		$this-&gt;address = $address;
	}
</pre></p>
<p>Siccome vogliamo comunque mantenere l&#8217;impostazione manuale di latitudine e longitudine, dobbiamo pero&#8217; decidere se centrare la mappa in base alle coordinate inserite manualmente oppure in base all&#8217;indirizzo.</p>
<p>L&#8217;idea è quella di centrare la mappa in base all&#8217;indirizzo solo quando questo è impostato ad un valore diverso dalla stringa vuota. Se l&#8217;indirizzo invece è vuoto, la mappa verrà centrata in base alle coordinate.</p>
<p>Per mettere in pratica questa idea è pero&#8217; necessario effettuare un controllo al fine di non avere un indirizzo impostato quando non lo desideriamo: tradotto, se impostiamo le coordinate manuali vogliamo che l&#8217;indirizzo sia effettivamente vuoto. Aggiungiamo perciò una riga a setCoordinates:</p>
<p><pre class="brush: php; highlight: [4];">
	function setCoordinates($lat, $long){
		$this-&gt;latitude = $lat;
		$this-&gt;longitude = $long;
		$this-&gt;address = &quot;&quot;;
	}
</pre></p>
<p>Ora viene il bello. Dobbiamo complicare un po&#8217; la funzione renderJS, poichè si dovrà comportare in modo diverso a seconda che la centratura della mappa avvenga attraverso l&#8217;indirizzo oppure attraverso le coordinate.</p>
<p>Introduciamo perciò la variabile <strong>$JScenterMap</strong> che, come dive il nome, conterrà il codice JS necessario a centrare la mappa o in base all&#8217;indirizzo o in base alle coordinate.</p>
<p>Il pezzo di codice che si occupa di inizializzare la mappa diventerà:</p>
<p><pre class="brush: php; highlight: [10];">
		// inizializza la mappa
		echo &quot;
			&lt;script type=\&quot;text/javascript\&quot;&gt;
				window.onload = initialize;
				window.onunload = GUnload;

				function initialize() {
					if (GBrowserIsCompatible()) {
						var map = new GMap2(document.getElementById(\&quot;map_canvas\&quot;));
						$JScenterMap
						map.setUIToDefault();
					}
				}
			&lt;/script&gt;
		&quot;;
</pre></p>
<p>Dove al comando <strong>map.setCenter</strong> è stata sostituita la variabile $JScenterMap, che dovrà essere già stata &#8220;riempita&#8221;. Il seguente codice va perciò inserito <strong>prima </strong>del precedente:</p>
<p><pre class="brush: php;">
		// assegna alla variabile $JScenterMap il codice necessario a centrare la mappa
		if($this-&gt;address!=&quot;&quot;){
			$JScenterMap = &quot;
				var geocoder = new GClientGeocoder();
				geocoder.getLatLng(
					'&quot;.$this-&gt;address.&quot;',
					function(point) {
						if (!point) {
							alert('&quot;.$this-&gt;address.&quot;' + \&quot; not found\&quot;);
						} else {
							map.setCenter(point, 13);
						}
					});
			&quot;;
		} else {
			$JScenterMap = &quot;map.setCenter(new GLatLng(&quot;.$this-&gt;latitude.&quot;, &quot;.$this-&gt;longitude.&quot;), 13);&quot;;
		}
</pre></p>
<p>La spiegazione del funzionamento è semplice.</p>
<p>Viene effettuato un controllo sulla stringa address; se l&#8217;indirizzo è vuoto, allora il codice da inserire sarà uguale a quello che avevamo in precedenza: ovvero, conterrà un map.setCenter con le coordinate prese dalle variabili membro della classe.</p>
<p>Se l&#8217;indirizzo invece è &#8220;diverso dalla stringa vuota&#8221;, allora occorre creare (tramite codice JavaScript) un nuovo oggetto GClientGeocoder, che grazie al metodo getLatLng può ricavare le coordinate del luogo desiderato.</p>
<p>Se l&#8217;indirizzo non riesce ad essere convertito in coordinate, verrà visualizzato un alert.</p>
<p>La sintassi è un po&#8217; criptica, poichè alla funzione getLatLng passiamo sia la stringa dell&#8217;indirizzo sia una funzione, che scriviamo inline &#8220;al volo&#8221;, a cui viene passato un punto &#8220;point&#8221; che è il risultato della localizzazione.</p>
<p>Provate ora, nella pagina base.php a richiamare la setAddress con l&#8217;indirizzo di casa vostra&#8230;</p>
<p><pre class="brush: xml;">
&lt;?php
	include(&quot;PhpGoogleMap.php&quot;);
	$map = new PhpGoogleMap(&quot;ABQIAAAAaCXVeDXfpm7YlAwseZnnIRT2yXp_ZAY8_ufC3CFXhHIE1NvwkxRftdtfVBwCVswj14F5-5imlhaaQg&quot;);
	$map-&gt;setDimensions(800, 600);
	$map-&gt;setAddress(&quot;Piazza Duomo Milano&quot;);
</pre></p>
<p>Bello vero?</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/phpgooglemap.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/phpgooglemap.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/phpgooglemap.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/phpgooglemap.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/phpgooglemap.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/phpgooglemap.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/phpgooglemap.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/phpgooglemap.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/phpgooglemap.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/phpgooglemap.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/phpgooglemap.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/phpgooglemap.wordpress.com/74/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/phpgooglemap.wordpress.com/74/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/phpgooglemap.wordpress.com/74/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=74&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://phpgooglemap.wordpress.com/2009/12/20/geocoding/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13363395950607a00a8697ef9cce2ad0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paooolino</media:title>
		</media:content>
	</item>
		<item>
		<title>Latitudine e longitudine</title>
		<link>http://phpgooglemap.wordpress.com/2009/12/20/latitudine-e-longitudine/</link>
		<comments>http://phpgooglemap.wordpress.com/2009/12/20/latitudine-e-longitudine/#comments</comments>
		<pubDate>Sun, 20 Dec 2009 13:31:56 +0000</pubDate>
		<dc:creator>paooolino</dc:creator>
				<category><![CDATA[Diario]]></category>
		<category><![CDATA[Personalizzazione]]></category>

		<guid isPermaLink="false">http://phpgooglemap.wordpress.com/?p=70</guid>
		<description><![CDATA[Le prossime variabili da parametrizzare sono latitudine e longitudine, in modo da poter centrare la mappa alle coordinate desiderate. Il procedimento è del tutto simile a quello utilizzato per parametrizzare le dimensioni; vediamo comunque in dettaglio come fare. Dichiariamo due nuove variabili membro, $latitude e $longitude ed inizializzamole nel costruttore. Scriviamo la funzione setCoordinates che [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=70&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Le prossime variabili da parametrizzare sono latitudine e longitudine, in modo da poter centrare la mappa alle coordinate desiderate.</p>
<p>Il procedimento è del tutto simile a quello utilizzato per <a title="Le dimensioni della mappa" href="http://phpgooglemap.wordpress.com/2009/12/20/le-dimensioni-della-mappa/" target="_self">parametrizzare le dimensioni</a>; vediamo comunque in dettaglio come fare.</p>
<p>Dichiariamo due nuove variabili membro, $latitude e $longitude ed inizializzamole nel costruttore.</p>
<p><pre class="brush: php; highlight: [6,7,13,14];">
class PhpGoogleMap {
	// variabili membro della classe
	private $apikey;
	private $dimX;
	private $dimY;
	private $latitude;
	private $longitude;

	function __construct($_apikey){
		$this-&gt;apikey = $_apikey;
		$this-&gt;dimX = 500;
		$this-&gt;dimY = 300;
		$this-&gt;latitude = 0;
		$this-&gt;longitude = 0;
	}
</pre></p>
<p>Scriviamo la funzione setCoordinates che si occupa di impostare le variabili appena dichiarate:</p>
<p><pre class="brush: php;">
	function setCoordinates($lat, $long){
		$this-&gt;latitude = $lat;
		$this-&gt;longitude = $long;
	}
</pre></p>
<p>Modifichiamo il metodo renderJS in modo che prenda in considerazione le nuove variabili:</p>
<p><pre class="brush: php; highlight: [15];">
	function renderJS(){
		echo &quot;
			&lt;script src=\&quot;http://maps.google.com/maps?file=api&amp;v=2&amp;key=&quot;. $this-&gt;apikey .&quot;&amp;sensor=false\&quot; type=\&quot;text/javascript\&quot;&gt;
			&lt;/script&gt;
		&quot;;

		echo &quot;
			&lt;script type=\&quot;text/javascript\&quot;&gt;
				window.onload = initialize;
				window.onunload = GUnload;

				function initialize() {
					if (GBrowserIsCompatible()) {
						var map = new GMap2(document.getElementById(\&quot;map_canvas\&quot;));
						map.setCenter(new GLatLng(&quot;.$this-&gt;latitude.&quot;, &quot;.$this-&gt;longitude.&quot;), 13);
						map.setUIToDefault();
					}
				}
			&lt;/script&gt;
		&quot;;
	}
</pre></p>
<p>Aggiungiamo alla pagina base.php una chiamata a setCoordinates con le coordinate (che ormai conosciamo) di Palo Alto:</p>
<p><pre class="brush: plain;">
	$map-&gt;setCoordinates(37.4419, -122.1419);
</pre></p>
<p>Et Voilà.</p>
<p>Naturalmente potete cambiare le coordinate in modo da poter centrare la vostra mappa in qualunque parte del mondo. Ma non è così facile sapere le coordinate di&#8230; casa vostra vero?</p>
<p>Per questo sfrutteremo, nel prossimo post, il servizio <strong>GeoCoding </strong>che permette di trasformare un indirizzo (Piazza Duomo 4, Milano ad esempio) in coordinate da dare in pasto alla nostra mappa. Andiamo!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/phpgooglemap.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/phpgooglemap.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/phpgooglemap.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/phpgooglemap.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/phpgooglemap.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/phpgooglemap.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/phpgooglemap.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/phpgooglemap.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/phpgooglemap.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/phpgooglemap.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/phpgooglemap.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/phpgooglemap.wordpress.com/70/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/phpgooglemap.wordpress.com/70/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/phpgooglemap.wordpress.com/70/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=70&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://phpgooglemap.wordpress.com/2009/12/20/latitudine-e-longitudine/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13363395950607a00a8697ef9cce2ad0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paooolino</media:title>
		</media:content>
	</item>
		<item>
		<title>Le dimensioni della mappa</title>
		<link>http://phpgooglemap.wordpress.com/2009/12/20/le-dimensioni-della-mappa/</link>
		<comments>http://phpgooglemap.wordpress.com/2009/12/20/le-dimensioni-della-mappa/#comments</comments>
		<pubDate>Sun, 20 Dec 2009 12:55:55 +0000</pubDate>
		<dc:creator>paooolino</dc:creator>
				<category><![CDATA[Diario]]></category>
		<category><![CDATA[Personalizzazione]]></category>

		<guid isPermaLink="false">http://phpgooglemap.wordpress.com/?p=67</guid>
		<description><![CDATA[Attualmente la nostra mappa viene visualizzata con le dimensioni 500&#215;300 (in pixel) che sono impostate nella funzione renderHTML della nostra classe. Rendiamo ora parametriche queste dimensioni, in modo da poterle impostare attraverso una funzione della nostra classe setDimensions(x, y) a cui passeremo appunto le dimensioni desiderate. Iniziamo con dichiarare due nuove variabili membro per la [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=67&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Attualmente la nostra mappa viene visualizzata con le dimensioni 500&#215;300 (in pixel) che sono impostate nella funzione renderHTML della nostra classe.</p>
<p>Rendiamo ora parametriche queste dimensioni, in modo da poterle impostare attraverso una funzione della nostra classe setDimensions(x, y) a cui passeremo appunto le dimensioni desiderate.</p>
<p>Iniziamo con dichiarare due nuove variabili membro per la nostra classe che serviranno a memorizzare i valori delle dimensioni della mappa. Ho aggiunto per chiarezza dei commenti visto che la nostra classe sta iniziando a espandersi:</p>
<p><pre class="brush: php; highlight: [4,5];">
class PhpGoogleMap {
	// variabili membro della classe
	private $apikey;
	private $dimX;
	private $dimY;
...
</pre></p>
<p>Nel costruttore definiamo delle dimensioni di default nel caso in cui l&#8217;utilizzatore della classe non imposti esplicitamente le dimensioni della mappa. Direi che il 500&#215;300 proposto da Google potrebbe essere una buona scelta:</p>
<p><pre class="brush: php; highlight: [3,4];">
	function __construct($_apikey){
		$this-&gt;apikey = $_apikey;
		$this-&gt;dimX = 500;
		$this-&gt;dimY = 300;
	}
</pre></p>
<p>A questo punto modifichiamo la funzione renderHTML in modo che includa le variabili della classe invece delle costanti precedenti:</p>
<p><pre class="brush: php;">
	function renderHTML(){
		echo &quot;&lt;div id=\&quot;map_canvas\&quot; style=\&quot;width: &quot;.$this-&gt;dimX.&quot;px; height: &quot;.$this-&gt;dimY.&quot;px\&quot;&gt;&lt;/div&gt;&quot;;
	}
</pre></p>
<p>Visualizziamo la pagina. La mappa ha le stesse dimensioni di prima, ma ora possiamo averne il controllo. Ci basta scrivere il metodo setDimensions che imposta le variabili dimX e dimY nella classe:</p>
<p><pre class="brush: php;">
	function setDimensions($x, $y){
		$this-&gt;dimX = $x;
		$this-&gt;dimY = $y;
	}
</pre></p>
<p>Ora possiamo richiamare dal codice PHP della pagina base.php il metodo setDimensions con le dimensioni desiderate da noi:</p>
<p><pre class="brush: xml; highlight: [4];">
&lt;?php
	include(&quot;PhpGoogleMap.php&quot;);
	$map = new PhpGoogleMap(&quot;ABQIAAAAaCXVeDXfpm7YlAwseZnnIRT2yXp_ZAY8_ufC3CFXhHIE1NvwkxRftdtfVBwCVswj14F5-5imlhaaQg&quot;);
	$map-&gt;setDimensions(800, 600);
?&gt;
</pre></p>
<p>Nel prossimo post parametrizzeremo le coordinate geografiche. Avanti!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/phpgooglemap.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/phpgooglemap.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/phpgooglemap.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/phpgooglemap.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/phpgooglemap.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/phpgooglemap.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/phpgooglemap.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/phpgooglemap.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/phpgooglemap.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/phpgooglemap.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/phpgooglemap.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/phpgooglemap.wordpress.com/67/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/phpgooglemap.wordpress.com/67/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/phpgooglemap.wordpress.com/67/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=67&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://phpgooglemap.wordpress.com/2009/12/20/le-dimensioni-della-mappa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13363395950607a00a8697ef9cce2ad0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paooolino</media:title>
		</media:content>
	</item>
		<item>
		<title>Inizializzare la mappa con window.onload</title>
		<link>http://phpgooglemap.wordpress.com/2009/12/20/inizializzare-la-mappa-con-window-onload/</link>
		<comments>http://phpgooglemap.wordpress.com/2009/12/20/inizializzare-la-mappa-con-window-onload/#comments</comments>
		<pubDate>Sun, 20 Dec 2009 12:31:11 +0000</pubDate>
		<dc:creator>paooolino</dc:creator>
				<category><![CDATA[Diario]]></category>
		<category><![CDATA[Personalizzazione]]></category>

		<guid isPermaLink="false">http://phpgooglemap.wordpress.com/?p=60</guid>
		<description><![CDATA[Nel codice di visualizzazione della nostra prima mappa avevamo richiamato la funzione JavaScript di inizializzazione della mappa direttamente nel tag body della pagina in questo modo: Per evitare di dover sporcare il tag body con il codice delle mappe, possiamo in modo del tutto equivalente definire nella funzione renderJS del codice JavaScript che va ad [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=60&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Nel codice di <a title="Visualizzare la prima Google Map" href="http://phpgooglemap.wordpress.com/2009/12/20/visualizzare-la-prima-mappa/" target="_self">visualizzazione della nostra prima mappa</a> avevamo richiamato la funzione JavaScript di inizializzazione della mappa direttamente nel tag body della pagina in questo modo:</p>
<p><pre class="brush: xml;">
&lt;body onload=&quot;initialize()&quot; onunload=&quot;GUnload()&quot;&gt;
</pre></p>
<p>Per evitare di dover sporcare il tag body con il codice delle mappe, possiamo in modo del tutto equivalente definire nella funzione renderJS del codice JavaScript che va ad assegnare all&#8217;evento window.onload il nome della nostra funzione.</p>
<p>Basterà inserire nella funzione che già abbiamo scritto le due righe evidenziate:</p>
<p><pre class="brush: php; highlight: [9,10];">
	function renderJS(){
		echo &quot;
			&lt;script src=\&quot;http://maps.google.com/maps?file=api&amp;v=2&amp;key=&quot;. $this-&gt;apikey .&quot;&amp;sensor=false\&quot; type=\&quot;text/javascript\&quot;&gt;
			&lt;/script&gt;
		&quot;;
		
		echo &quot;
			&lt;script type=\&quot;text/javascript\&quot;&gt;
				window.onload = initialize;
				window.onunload = GUnload;
				
				function initialize() {
					if (GBrowserIsCompatible()) {
						var map = new GMap2(document.getElementById(\&quot;map_canvas\&quot;));
						map.setCenter(new GLatLng(37.4419, -122.1419), 13);
						map.setUIToDefault();
					}
				}
			&lt;/script&gt;
		&quot;;
	}
</pre></p>
<p>Ovviamente ricordatevi di togliere gli eventi dal tag body.<br />
Verifichiamone il funzionamento e andiamo avanti.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/phpgooglemap.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/phpgooglemap.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/phpgooglemap.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/phpgooglemap.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/phpgooglemap.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/phpgooglemap.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/phpgooglemap.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/phpgooglemap.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/phpgooglemap.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/phpgooglemap.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/phpgooglemap.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/phpgooglemap.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/phpgooglemap.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/phpgooglemap.wordpress.com/60/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=60&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://phpgooglemap.wordpress.com/2009/12/20/inizializzare-la-mappa-con-window-onload/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13363395950607a00a8697ef9cce2ad0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paooolino</media:title>
		</media:content>
	</item>
		<item>
		<title>Funzioni base: il codice completo</title>
		<link>http://phpgooglemap.wordpress.com/2009/12/20/funzioni-base-il-codice-completo/</link>
		<comments>http://phpgooglemap.wordpress.com/2009/12/20/funzioni-base-il-codice-completo/#comments</comments>
		<pubDate>Sun, 20 Dec 2009 10:26:25 +0000</pubDate>
		<dc:creator>paooolino</dc:creator>
				<category><![CDATA[Diario]]></category>
		<category><![CDATA[Funzioni base]]></category>

		<guid isPermaLink="false">http://phpgooglemap.wordpress.com/?p=54</guid>
		<description><![CDATA[Riepiloghiamo questa prima fase in cui abbiamo ottenuto una classe che ingloba tutto il codice JavaScript ed HTML in grado di visualizzare una mappa di Google in una pagina web. L&#8217;unico parametro che possiamo specificare è, per ora, la chiave API ottenuta in base al dominio. Nel codice della nostra pagina tutto quello che dobbiamo [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=54&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Riepiloghiamo questa prima fase in cui abbiamo ottenuto una classe che ingloba tutto il codice JavaScript ed HTML in grado di visualizzare una mappa di Google in una pagina web.</p>
<p>L&#8217;unico parametro che possiamo specificare è, per ora, la chiave API ottenuta in base al dominio.</p>
<p>Nel codice della nostra pagina tutto quello che dobbiamo fare è:</p>
<ol>
<li>Includere la classe PhpGoogleMap</li>
<li>Creare un nuovo oggetto di tipo PhpGoogleMap passandogli l&#8217;API KEY.</li>
<li>Nell&#8217;intestazione della pagina richiamare il metodo renderJS.</li>
<li>Nel tag body gestire gli eventi onload e onunload.</li>
<li>Nel corpo della pagina richiamare il metodo renderHTML.</li>
</ol>
<p>Di seguito il codice completo della classe sviluppata finora:</p>
<p><strong>PhpGoogleMap.php</strong></p>
<p><pre class="brush: php;">
&lt;?php

class PhpGoogleMap {
	private $apikey;

	function __construct($_apikey){
		$this-&gt;apikey = $_apikey;
	}

	function renderJS(){
		echo &quot;
			&lt;script src=\&quot;http://maps.google.com/maps?file=api&amp;v=2&amp;key=&quot;. $this-&gt;apikey .&quot;&amp;sensor=false\&quot; type=\&quot;text/javascript\&quot;&gt;
			&lt;/script&gt;
		&quot;;

		echo &quot;
			&lt;script type=\&quot;text/javascript\&quot;&gt;
				function initialize() {
					if (GBrowserIsCompatible()) {
						var map = new GMap2(document.getElementById(\&quot;map_canvas\&quot;));
						map.setCenter(new GLatLng(37.4419, -122.1419), 13);
						map.setUIToDefault();
					}
				}
			&lt;/script&gt;
		&quot;;
	}

	function renderHTML(){
		echo &quot;&lt;div id=\&quot;map_canvas\&quot; style=\&quot;width: 500px; height: 300px\&quot;&gt;&lt;/div&gt;&quot;;
	}
}

?&gt;
</pre></p>
<p>E poi il codice della pagina (l&#8217;API KEY è quella ottenuta per il dominio localhost):</p>
<p><strong>base.php</strong></p>
<p><pre class="brush: xml;">
&lt;?php
	include(&quot;PhpGoogleMap.php&quot;);
	$map = new PhpGoogleMap(&quot;ABQIAAAAaCXVeDXfpm7YlAwseZnnIRT2yXp_ZAY8_ufC3CFXhHIE1NvwkxRftdtfVBwCVswj14F5-5imlhaaQg&quot;);
?&gt;
&lt;!DOCTYPE html &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot;
  &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
&lt;head&gt;
	&lt;meta http-equiv=&quot;content-type&quot; content=&quot;text/html; charset=utf-8&quot;/&gt;
	&lt;?php $map-&gt;renderJS(); ?&gt;
&lt;/head&gt;
&lt;body onload=&quot;initialize()&quot; onunload=&quot;Gunload()&quot;&gt;
	&lt;?php $map-&gt;renderHTML(); ?&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre></p>
<p>Il prossimo obiettivo sarà quello di migliorare questo codice in modo da renderlo più funzionale e parametrico.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/phpgooglemap.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/phpgooglemap.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/phpgooglemap.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/phpgooglemap.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/phpgooglemap.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/phpgooglemap.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/phpgooglemap.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/phpgooglemap.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/phpgooglemap.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/phpgooglemap.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/phpgooglemap.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/phpgooglemap.wordpress.com/54/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/phpgooglemap.wordpress.com/54/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/phpgooglemap.wordpress.com/54/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=54&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://phpgooglemap.wordpress.com/2009/12/20/funzioni-base-il-codice-completo/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13363395950607a00a8697ef9cce2ad0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paooolino</media:title>
		</media:content>
	</item>
		<item>
		<title>Visualizzare la prima mappa</title>
		<link>http://phpgooglemap.wordpress.com/2009/12/20/visualizzare-la-prima-mappa/</link>
		<comments>http://phpgooglemap.wordpress.com/2009/12/20/visualizzare-la-prima-mappa/#comments</comments>
		<pubDate>Sun, 20 Dec 2009 10:14:46 +0000</pubDate>
		<dc:creator>paooolino</dc:creator>
				<category><![CDATA[Diario]]></category>
		<category><![CDATA[Funzioni base]]></category>

		<guid isPermaLink="false">http://phpgooglemap.wordpress.com/?p=50</guid>
		<description><![CDATA[Per verificare che tutto funzioni, direi di rendere funzionante questo esempio visualizzando la mappa di Palo Alto (California) come nell&#8217;esempio proposto da Google. Successivamente andremo a personalizzarlo completamente per visualizzare degli indirizzi inseriti da noi decidendo anche le dimensioni della mappa. Ora che abbiamo importato l&#8217;API nella nostra pagina dobbiamo aggiungere un altro blocco JavaScript [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=50&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Per verificare che tutto funzioni, direi di rendere funzionante questo esempio visualizzando la mappa di Palo Alto (California) come nell&#8217;<a title="Hello World Google Maps" href="http://code.google.com/intl/it-IT/apis/maps/documentation/introduction.html#The_Hello_World_of_Google_Maps" target="_blank">esempio proposto da Google</a>. Successivamente andremo a personalizzarlo completamente per visualizzare degli indirizzi inseriti da noi decidendo anche le dimensioni della mappa.</p>
<p>Ora che abbiamo <a title="Includere Google Maps API" href="http://phpgooglemap.wordpress.com/2009/12/20/includere-google-maps-api-nella-pagina/" target="_self">importato l&#8217;API nella nostra pagina</a> dobbiamo aggiungere un altro blocco JavaScript che si occupa di inizializzare la mappa precisando latitudine e longitudine. Il blocco in questione è il seguente:</p>
<p><pre class="brush: xml;">
    &lt;script type=&quot;text/javascript&quot;&gt;

    function initialize() {
      if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById(&quot;map_canvas&quot;));
        map.setCenter(new GLatLng(37.4419, -122.1419), 13);
        map.setUIToDefault();
      }
    }

    &lt;/script&gt;

</pre></p>
<p>Anzitutto si effettua un controllo di compatibilità del Browser attraverso la funzione <strong>GBrowserIsCompatible</strong>.</p>
<p>Viene creato in secondo luogo l&#8217;oggetto JavaScript map di tipo GMap2. Notate che al costruttore viene passato un id, <strong>map_canvas</strong>, che deve essere il nome di un elemento presente nella pagina che andremo ad aggiungere dopo.</p>
<p>Viene centrata la mappa sulle coordinate di Palo Alto, California, con un livello di zoom 13.</p>
<p>Viene impostata l&#8217;interfaccia utente ad un valore predefinito.</p>
<p>Questo codice verrà ovviamente inserito dalla nostra classe, per cui modifichiamo la funzione renderJS nel seguente modo:</p>
<p><pre class="brush: php;">
	function renderJS(){
		echo &quot;
			&lt;script src=\&quot;http://maps.google.com/maps?file=api&amp;v=2&amp;key=&quot;. $this-&gt;apikey .&quot;&amp;sensor=false\&quot; type=\&quot;text/javascript\&quot;&gt;
			&lt;/script&gt;
		&quot;;

		echo &quot;
			&lt;script type=\&quot;text/javascript\&quot;&gt;
				function initialize() {
					if (GBrowserIsCompatible()) {
						var map = new GMap2(document.getElementById(\&quot;map_canvas\&quot;));
						map.setCenter(new GLatLng(37.4419, -122.1419), 13);
						map.setUIToDefault();
					}
				}
			&lt;/script&gt;
		&quot;;
	}
</pre></p>
<p>In questo modo, con una sola funzione includiamo tutto il JavaScript necessario, sia all&#8217;inclusione delle API sia per quanto riguarda l&#8217;inizializzazione.</p>
<p>Abbiamo così dichiarato una funzione <strong>initialize </strong>in JavaScript, che dovrà essere richiamata al caricamento della pagina che la contiene. Il modo per farlo è il seguente:</p>
<p><pre class="brush: xml;">
&lt;body onload=&quot;initialize()&quot; onunload=&quot;Gunload()&quot;&gt;
</pre></p>
<p>Ovvero, nel tag <strong>body </strong>della pagina base.php dobbiamo aggiungere le due risposte agli eventi <strong>onload </strong>(che attiva la nostra funzione ed inizializza perciò la mappa) e <strong>onunload</strong>, quest&#8217;ultima indispensabile per liberare la memoria ogni volta che la pagina viene chiusa.</p>
<p>In una fase successiva andremo a gestire gli eventi onload e onunload direttamente nel JavaScript scritto dalla nostra classe PHP, in modo da non dover modificare manualmente il codice HTML della pagina come stiamo facendo ora.</p>
<p>Come ultimo passaggio, andiamo a creare l&#8217;elemento della pagina in cui verrà renderizzata la mappa, ovvero il famoso map_canvas citato nel JavaScript in precedenza.</p>
<p>Ovviamente, includiamo tutto nella classe creando la funzione renderHTML:</p>
<p><pre class="brush: php;">
	function renderHTML(){
		echo &quot;&lt;div id=\&quot;map_canvas\&quot; style=\&quot;width: 500px; height: 300px\&quot;&gt;&lt;/div&gt;&quot;;
	}
</pre></p>
<p>anche qui abbiamo impostato arbitrariamente le dimensioni della mappa. Più avanti le renderemo <strong>parametriche</strong>, in modo da poter decidere di volta in volta le dimensioni desiderate.</p>
<p>Manca solo un passaggio: richiamiamo la <strong>renderHTML </strong>nel codice php della pagina base ed il gioco è fatto!</p>
<p><pre class="brush: xml;">
&lt;body onload=&quot;initialize()&quot; onunload=&quot;Gunload()&quot;&gt;
	&lt;?php $map-&gt;renderHTML(); ?&gt;
&lt;/body&gt;
</pre></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/phpgooglemap.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/phpgooglemap.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/phpgooglemap.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/phpgooglemap.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/phpgooglemap.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/phpgooglemap.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/phpgooglemap.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/phpgooglemap.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/phpgooglemap.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/phpgooglemap.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/phpgooglemap.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/phpgooglemap.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/phpgooglemap.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/phpgooglemap.wordpress.com/50/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=50&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://phpgooglemap.wordpress.com/2009/12/20/visualizzare-la-prima-mappa/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13363395950607a00a8697ef9cce2ad0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paooolino</media:title>
		</media:content>
	</item>
		<item>
		<title>Includere Google Maps API nella pagina</title>
		<link>http://phpgooglemap.wordpress.com/2009/12/20/includere-google-maps-api-nella-pagina/</link>
		<comments>http://phpgooglemap.wordpress.com/2009/12/20/includere-google-maps-api-nella-pagina/#comments</comments>
		<pubDate>Sun, 20 Dec 2009 09:41:49 +0000</pubDate>
		<dc:creator>paooolino</dc:creator>
				<category><![CDATA[Diario]]></category>
		<category><![CDATA[Funzioni base]]></category>

		<guid isPermaLink="false">http://phpgooglemap.wordpress.com/?p=46</guid>
		<description><![CDATA[Per poter utilizzare la mappa nella nostra pagina occorre prima di tutto includere il servizio tramite questo codice (dalla Developer Guide: http://code.google.com/intl/it-IT/apis/maps/documentation/introduction.html#Loading_the_Maps_API) Dove dobbiamo specificare alcuni parametri, tra cui l&#8217;API KEY che abbiamo ormai memorizzato nella nostra classe. A questo scopo, scriviamo una funzione della nostra classe che automaticamente include la chiave: L&#8217;unica cosa che [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=46&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Per poter utilizzare la mappa nella nostra pagina occorre prima di tutto includere il servizio tramite questo codice<br />
(dalla Developer Guide:<a title="Developer Guide Google Maps API V2" href="http://code.google.com/intl/it-IT/apis/maps/documentation/introduction.html#Loading_the_Maps_API" target="_blank"> http://code.google.com/intl/it-IT/apis/maps/documentation/introduction.html#Loading_the_Maps_API</a>)</p>
<p><pre class="brush: xml;">
&lt;script src=&quot;http://maps.google.com/maps?file=api&amp;v=2&amp;key=abcdefg&amp;sensor=false&quot;
        type=&quot;text/javascript&quot;&gt;
&lt;/script&gt;
</pre></p>
<p>Dove dobbiamo specificare alcuni parametri, tra cui l&#8217;<a title="Memorizzare l'API KEY nella classe" href="http://phpgooglemap.wordpress.com/2009/12/19/memorizzare-api-key-nella-classe/" target="_self">API KEY che abbiamo ormai memorizzato nella nostra classe</a>.</p>
<p>A questo scopo, scriviamo una funzione della nostra classe che automaticamente include la chiave:</p>
<p><pre class="brush: php;">
	function renderJS(){
		echo &quot;
			&lt;script src=\&quot;http://maps.google.com/maps?file=api&amp;v=2&amp;key=&quot;. $this-&gt;apikey .&quot;&amp;sensor=false\&quot; type=\&quot;text/javascript\&quot;&gt;
			&lt;/script&gt;
		&quot;;
	}
</pre></p>
<p>L&#8217;unica cosa che ci rimane da fare ora è richiamare la <strong>renderJS </strong>nella nostra pagina base.php; facciamolo nell&#8217;<strong>head</strong> (intestazione) in modo da seguire diligentemente l&#8217;hello world proposto dalla <a title="Hello World Google Maps" href="http://code.google.com/intl/it-IT/apis/maps/documentation/introduction.html#The_Hello_World_of_Google_Maps" target="_blank">documentazione ufficiale di Google Maps</a>.</p>
<p><pre class="brush: xml;">
&lt;head&gt;
	...
	&lt;?php $map-&gt;renderJS(); ?&gt;
&lt;/head&gt;
</pre></p>
<p>salviamo il tutto e continuiamo!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/phpgooglemap.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/phpgooglemap.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/phpgooglemap.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/phpgooglemap.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/phpgooglemap.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/phpgooglemap.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/phpgooglemap.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/phpgooglemap.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/phpgooglemap.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/phpgooglemap.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/phpgooglemap.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/phpgooglemap.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/phpgooglemap.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/phpgooglemap.wordpress.com/46/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=phpgooglemap.wordpress.com&amp;blog=11024636&amp;post=46&amp;subd=phpgooglemap&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://phpgooglemap.wordpress.com/2009/12/20/includere-google-maps-api-nella-pagina/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13363395950607a00a8697ef9cce2ad0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">paooolino</media:title>
		</media:content>
	</item>
	</channel>
</rss>
