Pubblicato 21 luglio 2010 in js, web da Luca

Con l’introduzione della versione 3 delle di map non è più necessario generare una chiave univoca per ogni sito dove dobbiamo inserire le nostre e questo semplifica molto le cose quando procediamo alla pubblicazione di un sito dall’area di sviluppo in produzione perché non ci dobbiamo preoccupare di generare una nuova chiave.

Ma ora andiamo più nello specifico e vediamo come iniziare da markup della nostra pagina dove inseriamo un div con ID map.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it" lang="it">
<head>
   <title>Contatti - Sport 62</title>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
   <meta name="Language" content="it"/>
   <meta name="Description" content=""/>
   <meta name="KeyWords" content=""/>
   <script type="text/javascript" src="/include/.js"></script>
   <script type="text/javascript" src="http://.google.com//api/js?sensor=true&language=it"></script>
   <!-- DOCUMENT READY -->
   <script type="text/javascript">
   $(document).ready(function(){
   });
   </script>
   <style>
   #contenitore{
     width:900px;
     height:100%;
     margin:auto;
     background-color:#ccc;
   }
   #map {
     width:500px;
     height:400px;
   }
   </style>
</head>
<body>
<div id="contenitore">
    <div id="mappa"></div>
</div>
</body>
</html>
Nel nostro documento abbiamo definito un di contenitore largo 900px e il div map che conterrà la nostra mappa di google. Nell’head del documento c’è la chiamata alle api di google dove gli passiamo come parametro sensor=true e la localizzazione della lingua tramite il parametro language=it così la nostra mappa “parlerà italiano”.
Ora andiamo a scrivere la nostra funzione che ci permetterà di visualizzare la mappa.
<script type="text/javascript">
function initialize() {
    var map = new google.maps.Map(document.getElementById("map"), {
    scaleControl: true});
    map.setCenter(new google.maps.LatLng(45.66100, 12.24581));
    map.setZoom(15);
    map.setMapTypeId(google.maps.MapTypeId.ROADMAP);
    var marker = new google.maps.Marker({map: map, position:
    map.getCenter()});
    var infowindow = new google.maps.InfoWindow();
    infowindow.setContent("<p>Testo di prova del fumetto<br />Piazzale Duca d'aosta<br />Treviso (TV)<br />Ulteriore riga</p>");

    infowindow.open(map, marker);
    google.maps.event.addListener(marker, 'click', function() {
      infowindow.open(map, marker);
    });
}
</script>

In questa funzione per prima cosa andiamo ad inizializzare l’oggetto google.maps.Map nel nostro div, poi gli impostiamo il centro della mappa con le coordinate, in questo esempio è la stazione ferroviaria di Treviso ed impostiamo il livello di zoom a 15, l’ultima impostazione della mappa è la tipologia che corrisponde a Mappa quando utilizziamo le Google Maps.
Fatto questo creiamo un nuovo marker posizionandolo nel nostro centro della mappa ed è molto semplice perché nell’inizializzazione gli passiamo un oggetto con la mappa da utilizzare e la posizione.
Impostato il marker creiamo il fumetto attracerso l’oggetto InfoWindows() dove gli facciamo scrivere del testo di prova e lo associamo al marker creato prima.
L’ultima azione che facciamo è associare al click sul marker l’apertura del fumetto.

Ora è sufficiente richiamare la funzione initialize() all’apertura della pagina ed abbiamo la nostra mappa.

$(document).ready(function(){
    initialize();
})

Per tutte le opzioni che si possono utilizzare vi rimando alla documentazione ufficiale di google Map.

L’esempio di questo post lo potete trovare qui.

Come sempre aspetto commenti / critiche / approvazioni

Pubblicato 6 maggio 2010 in js, web da Luca

Oggi vi spiego come poter creare una piccola richiesta di password smarrita utilizzando e una chiamata .

ipotizziamo di avere una tabella degli utenti così strutturata che memorizza le password in chiaro (solo a scopo didattico e per questo articolo).

CREATE TABLE user(
    id bigint AUTO_INCREMENT,
    username varchar(50) NOT NULL,
    password varchar(30) NOT NULL,
    nome varchar(80) NOT NULL,
    cognome varchar(80) NOT NULL,
    ins_date datetime,
    upd_date datetime,
    lastlogin datetime,
    status tinyint(1) DEFAULT 1
    PRIMARY KEY (`id`),
    KEY `username` (`username`,`password`)
) ENGINE=MyISAM

|| continua a leggere »

Pubblicato 22 gennaio 2010 in js, web da Luca

cercando un aggiornamento di ho trovato questa pagina:

http://getfirebug.com/lite.html

che spiega come integrare firebug lite in IE e potrebbe essere interessante per avere un po’ più di in IE che è uno dei sponosi problemi di quel browser (almeno dal mio punto di vista).

per inserire firebug lite è sufficiente aggiungere questa riga di codice nell’head della vostra pagina web.

<script type='text/javascript'
src='http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js'></script>

Ho potuto fare delle prove veloci e mi sembra molto utile.

Pubblicato 15 gennaio 2010 in js, varie da Luca

Come recita il banner nell’home page di jquery Nuovo anno, nuova versione. Infatti, ieri è uscrita la nuova versione 1.4 della libreria javascript. Per festeggiare l’evento hano creatoun nuovo sito dove possiamo trovare tutte le informazioni sul rilascio di dal’ultima RC.

Sicuramente interessante è l’annucio del rilascio della nuove versione o le domande e risposte.

Tutte le novità e modifiche sono presenti qui

Riporto un elenco delle nuove funzionalità:

Ci sono delle novità anche per quanto riguarda la parte , cito solo i titoli dei paragrafic eh riguardano la sezione

Nested param serialization (jQuery.param() Documentation, Commit 1, Commit 2)

JSON and script types auto-detected by content-type (jQuery.ajax Documentation, Commit 1, Commit 2)

Etag support has been added (jQuery.ajax() Documentation, Commit)

Strict JSON parsing, using native JSON.parse (jQuery.ajax() Documentation, Commit 1, Commit 2, Commit 3)

Serialize HTML5 elements (jQuery.param() Documentation, Commit)

Context for Ajax Request (jQuery.ajax() Documentation, Commit)

Success callback receives XHR object as third argument (jQuery.ajax() Documentation, Commit)

Explicitly set a content-type (jQuery.ajax() Documentation, Commit)

Explicitly specify a JSONP callback name (jQuery.ajax Documentation, Commit)

Avoid pre-flighting cross-domain XHR (Commit)

jQuery.ajax() is now using onreadystatechange instead of a timer (Commit)

Ce n’è da imparare!