function makeRequest(post_list, elem, url)
{
   var httpRequest;

   if (window.XMLHttpRequest)
   { // Mozilla, Safari, ...
      httpRequest = new XMLHttpRequest();
      if (httpRequest.overrideMimeType)
      {
         httpRequest.overrideMimeType('text/xml');
         // See note below about this line
      }
   } 
   else if (window.ActiveXObject)
   { // IE
      try
      {
         httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
      } 
      catch (e)
      {
         try
         {
            httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
         } 
         catch (e) {}
      }
   }

   if (!httpRequest)
   {
      alert('Can not create an XMLHTTP instance');
      return false;
   }

   httpRequest.onreadystatechange = function() { alertContents(httpRequest, elem); };
   httpRequest.open('POST', url, true);
   httpRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
   httpRequest.send(post_list);
}

function alertContents(httpRequest, elem)
{
   if (httpRequest.readyState == 4)
   {
      if (httpRequest.status == 200)
      {
         document.getElementById(elem).innerHTML = httpRequest.responseText;
      }
      else
      {
         alert('There was a problem with the request.');
      }
   }
}
