function GetXmlHttpObject() { 
  
	/*
	 * http://developer.mozilla.org/de/docs/AJAX:Getting_Started
	 *
	 * Um einen HTTP-Request mittels JavaScript an einen Server absetzen zu können, benötigt man eine Instanz einer Klasse, welche diese 
	 * Funktionalität bietet. Solch eine Klasse, genannt XMLHTTP, wurde ursprünglich im Internet Explorer als ein ActiveX-Objekt eingeführt. 
	 * Später implementierten Mozilla, Safari und andere Browser eine Klasse namens XMLHttpRequest, welche die Methoden und Eigenschaften des 
	 * originalen ActiveX-Objektes von Microsoft unterstützt.
   *
   * Eine browserübergreifende Instanz der benötigten Klasse erzeugen: 
	 */
		
  var objXMLHttp=null
		
  if(window.XMLHttpRequest) {  // Firefox, Mozilla, Opera
    objXMLHttp=new XMLHttpRequest()
  }	
  else if(window.ActiveXObject) {  // IE	 
		try {
      objXMLHttp = new ActiveXObject("Msxml2.XMLHTTP");
    } 
		catch(e) {
      try {
        objXMLHttp = new ActiveXObject("Microsoft.XMLHTTP");
      } 
			catch(e) {}
    }
  }
	
	return objXMLHttp
  	
}


function XmlHttpExecute(url,request,httpRequestMethod) {
  
  if(document.getElementById("loader")) document.getElementById("loader").innerHTML = '<img src="ajax/images/loader.gif">'; 
  
  /*
	 * Im nächsten Schritt entscheidet man, was zu tun ist, nachdem man vom Server eine Antwort zu dem abgesetzten Request bekommen hat. 
	 * An dieser Stelle muss man dem HTTP Request-Objekt lediglich mitteilen, welche JavaScript-Funktion die Antwort abarbeiten soll. Dies 
	 * erreicht man, indem man die onreadystatechange-Eigenschaft des Objektes genauso nennt wie die JavaScript-Funktion, welche man benutzen möchte:
	 */
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open(httpRequestMethod,url,true);
  
	/*
	 * Bei der Übergabe der Daten per POST ist zu beachten, dass der MIME-Typ der Anfrage wie folgt angepasst werden muss:
	 */
	if(httpRequestMethod == "POST") {
  	xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		xmlHttp.send(request)
	}
	else {
	  xmlHttp.send(null)
	}
	
} 