function createXHR() {
	var request = null; 
	if (window.XMLHttpRequest) {
		request = new XMLHttpRequest();
	} 
	else if (window.ActiveXObject) {
		try {
			request = new ActiveXObject("Msxml2.XMLHTTP");
		} 
		catch (e) {
			try {
				request = new ActiveXObject("Microsoft.XMLHTTP");
			} 
			catch (e) {}
		}
	}
	return request;
}

// options : liste des variables avec leur contenu, doit être de la forme "variable1=contenu1&variable2=contenu2"
// page : script php appelé
// fonctionRetour : fonction javascript qui va retourner le résultat du script appelé avec page (variable précédente) que le résultat soit bon ou pas
// method : "get" ou "post" (majuscules ou minuscules), comme pour un formulaire normal, si pas de valeur prendra GET
function executerAjax(options, page, fonctionRetour, method){
	method = (method != null) ? method.toUpperCase() : "GET";
	fonctionRetour = (fonctionRetour != null) ? fonctionRetour : function(){};

	var xhr = createXHR(); 		
	xhr.onreadystatechange = function() {
		if(xhr.readyState == 4) {
			if (xhr.status == 200) {
				fonctionRetour(xhr.responseText);
			}else{
				fonctionRetour((typeof xhr.statusText != "undefined") ? xhr.statusText : "", xhr.status);
			}
		}  
	}  

	var params = (method == "GET") ? "?" + options : "";

	xhr.open(method, page + params, true); 
	xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");  		
	xhr.send((method == "POST") ? options : null);
}

