function httpRequest(url,target)
{
	var httpRequestObject = null;

	if (window.XMLHttpRequest) // Firefox, Opera 8.0+, Safari
	{	
		httpRequestObject = new XMLHttpRequest();

		if (httpRequestObject.overrideMimeType)
		{
			httpRequestObject.overrideMimeType('text.xml');			
		}
	}
	else if (window.ActiveXObject) // If Firefox, Opera or Safari are not being used, try IE
	{
		//Internet Explorer 6 and later
		try
		{
			httpRequestObject = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e) // If an error is caught, try the older method (IE 5.5)
		{
			try
			{
				httpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
				
			}
			catch (e) {}
		}
	}

	if (httpRequestObject == null)
	{
		return false;
	}

	var url02 = url + "&sid="+Math.random(); // Add a random number to prevent the server from using a cached file
	httpRequestObject.onreadystatechange = function() { stateChanged(httpRequestObject,target); }; // Call stateChanged function when a change is triggered
	httpRequestObject.open ("GET", url02, true); // Open the XMLHTTP oject / make the HTTP request with the given url
	httpRequestObject.send (null); // Send the HTTP request to the server - 'null' means no post data
}

function stateChanged(httpRequestObject,target) // This executes every time the state of the XMLHTTP object changes
{ 
	if (httpRequestObject.readyState == 4) // 4 means a full server response is received
	{
		if (httpRequestObject.status == 200) // 200 means the response of the server is ok
		{
			document.getElementById(target).innerHTML = httpRequestObject.responseText;
		}
	}
}