Javascript Validare un indirizzo e-mail

Con una semplice espressione regolare riusciamo a riconoscere se l’indirizzo e-mail ha una struttura valida o meno, ma attenzione non possiamo sapere se l’indirizzo email esiste, in questo caso dovremmo farlo con PHP ma il discorso si complica

function validateEmail(email) { 
	    var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
	    return re.test(email);
	}

$.fn.serializeObject = function() {
	var o = {};
	var a = this.serializeArray();
	$.each(a, function() {
		if (o[this.name] !== undefined) {
			if (!o[this.name].push) {
				o[this.name] = [ o[this.name] ];
			}
			o[this.name].push(this.value || '');
		} else {
			o[this.name] = this.value || '';
		}
	});
	return o;
};

PHP Calcolare la differenza tra date

Spesso torna utile sapere qual’è la differenza tra due date, ecco allora che vi propongo una fantastica funzione in PHP


 function datediff($tipo, $partenza, $fine)
    {
        switch ($tipo)
        {
            case "A" : $tipo = 365;
            break;
            case "M" : $tipo = (365 / 12);
            break;
            case "S" : $tipo = (365 / 52);
            break;
            case "G" : $tipo = 1;
            break;
        }
        $arr_partenza = explode("/", $partenza);
        $partenza_gg = $arr_partenza[0];
        $partenza_mm = $arr_partenza[1];
        $partenza_aa = $arr_partenza[2];
        $arr_fine = explode("/", $fine);
        $fine_gg = $arr_fine[0];
        $fine_mm = $arr_fine[1];
        $fine_aa = $arr_fine[2];
        $date_diff = mktime(12, 0, 0, $fine_mm, $fine_gg, $fine_aa) - mktime(12, 0, 0, $partenza_mm, $partenza_gg, $partenza_aa);
        $date_diff  = floor(($date_diff / 60 / 60 / 24) / $tipo);
        return $date_diff;
    }

Script Javascript per recuperare le query string

Immagino che spesso ci capiti di dover recuperare i parametri da una query string ( per chi non sa cosa sono vi rimando l’altro mio articolo qui ).

Supponiamo di avere una query string sviluppata in questo modo:
index.php?parametro1=variabile&parametro2=variabile, se utilizzassimo codice PHP, ASP sarebbe molto facile recuperarlo, ma se ci troviamo costretti a recuperarle tramite un Javascript sarebbe una bella scocciatura, recuperare la URL farla esplodere fare il match……. direi che non è per nulla divertente, ecco perché vi posto di seguito la mia fantastica funzione per il recupero dei parametri.

Con questo funzione vi ritorna un array[nomeParametro] = valore

function GetQueryString() {
    var query_string = {};
    var query = window.location.search.substring(1);
    var vars = query.split("&");
    for (var i=0;i<vars.length;i++) {
        var pair = vars[i].split("=");
        if (typeof query_string[pair[0]] === "undefined") {
            query_string[pair[0]] = decodeURIComponent(pair[1]);
        } else if (typeof query_string[pair[0]] === "string") {
            var arr = [ query_string[pair[0]],decodeURIComponent(pair[1]) ];
            query_string[pair[0]] = arr;
        } else {
            query_string[pair[0]].push(decodeURIComponent(pair[1]));
        }
    }
    return query_string;
}