
function AppelAjax(NomFichier, Id, Asynchrone, Method, Valeur)
{
	if(Asynchrone==false)
	{
		alert_ajax(Id,ajax(NomFichier, Id, Method, Valeur, Asynchrone));
	}
	else
	{
		ajax(NomFichier, Id, Method, Valeur, Asynchrone);
	}
}

function ajax(Fichier,Id, Method, Valeur, Asynchrone)
{
    var xhr=null;
    
    if (window.XMLHttpRequest) { 
        xhr = new XMLHttpRequest();
    }
    else if (window.ActiveXObject) 
    {
       try 
		{
			xhr = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e)
		{
			xhr = new ActiveXObject("Microsoft.XMLHTTP");
		}
    }
	else
	{
		alert("Navigateur incompatible avec la version de ce site internet");
		xhr = false;
	}
	
	if(Asynchrone==true)
	{
		//on définit l'appel de la fonction au retour serveur
		xhr.onreadystatechange = function() { alert_ajax(Id,xhr,Valeur); };
	}
	
    //on appelle le fichier reponse.txt
    
	if(Method.toLowerCase == "post")
	{
		xhr.open(Method, Fichier, true);
		xhr.send(Valeur);
	}
	else
	{
		xhr.open(Method, Fichier+"?"+Valeur, true);
		xhr.send(null);
	}
	
	if(Asynchrone==false)
	{
		return xhr;
	}
}

/**********************************************************************************************/
/**/
/**/
/*
function alert_ajax(Id, xhr)
{
	switch(Id)
	{
	case "TxtA": // Fichier Texte Asynchrone
		switch(xhr.readyState)
		{
			case 0:
				document.getElementById(Id).innerHTML = "Non Initialisée";
				break;
			case 1:
				document.getElementById(Id).innerHTML = document.getElementById(Id).innerHTML + " En Chargement";
				break;
			case 2:
				document.getElementById(Id).innerHTML = document.getElementById(Id).innerHTML + "Chargée";
				break;
			case 3:
				document.getElementById(Id).innerHTML = document.getElementById(Id).innerHTML + "En cours de traitement";
				break;
			case 4:
				alert(xhr.responseText);
				break;
		}
		break;
	case "TxtS": // Fichier Texte Synchrone
		document.getElementById(Id).innerHTML = xhr.responseText;
		break;
	case "XmlA": // Fichier XML Asynchrone
	case "PhpA": // Fichier PHP Asynchrone
		switch(xhr.readyState)
		{
		case 0:
			document.getElementById(Id).innerHTML = "Non Initialisée";
			break;
		case 1:
			document.getElementById(Id).innerHTML = document.getElementById(Id).innerHTML + " En Chargement";
			document.getElementById("Message").style.visibility = "visible";
			break;
		case 2:
			document.getElementById(Id).innerHTML = document.getElementById(Id).innerHTML + "Chargée";
			break;
		case 3:
			document.getElementById(Id).innerHTML = document.getElementById(Id).innerHTML + "En cours de traitement";
			break;
		case 4:
			var docXML= xhr.responseXML;
			var items = docXML.getElementsByTagName("donnee")
			//on fait juste une boucle sur chaque élément "donnee" trouvé
			for (i=0;i<items.length;i++)
			{
				alert (items.item(i).firstChild.data);
			}
			document.getElementById("Message").style.visibility = "hidden";
			break;
		}
		break;
	case "XmlS": // Fichier XML Synchrone
	case "PhpS": // Fichier PHP Synchrone
		var docXML= xhr.responseXML;
		var items = docXML.getElementsByTagName("donnee")
		//on fait juste une boucle sur chaque élément "donnee" trouvé
		for (i=0;i<items.length;i++)
		{
					document.getElementById(Id).innerHTML = document.getElementById(Id).innerHTML + "<br>" + items.item(i).firstChild.data;
		}

		break;
	default:
		break
	}
}

*/