 var http_request = false;
 function makePOSTRequest(url, parameters, result_tag) {
    http_request = false;
    if (window.XMLHttpRequest) { // Mozilla, Safari,...
       http_request = new XMLHttpRequest();
       if (http_request.overrideMimeType) {
              // set type accordingly to anticipated content type
          //http_request.overrideMimeType('text/xml');
          http_request.overrideMimeType('text/html');
       }
    } else if (window.ActiveXObject) { // IE
       try {
          http_request = new ActiveXObject("Msxml2.XMLHTTP");
       } catch (e) {
          try {
             http_request = new ActiveXObject("Microsoft.XMLHTTP");
          } catch (e) {}
       }
    }
    if (!http_request) {
       alert('Cannot create XMLHTTP instance');
       return false;
    }

    http_request.onreadystatechange =  function() {
      if (http_request.readyState == 4) {
         if (http_request.status == 200) {
          //alert(http_request.responseText);
          result = http_request.responseText;
          if ( result_tag != 'no_result_tag' ) {
            document.getElementById(result_tag).innerHTML = result;
          }
          if (result_tag == 'tips') {
            if (result.length == 31) {
              document.getElementById(result_tag).style.display = 'none';
            } else {
              document.getElementById(result_tag).style.display = 'block';
            }
          }
         } else {
          alert('Ajax error. ( ajax.js ). http Status: ' + http_request.status + ', Response text: ' + http_request.responseText);
         }
      }
   }
    http_request.open('POST', url, true);
    http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=utf-8");
    http_request.setRequestHeader("Content-length", parameters.length);
    http_request.setRequestHeader("Connection", "close");
    http_request.send(parameters);
 }
 
  function ajax_request(results_container, strings, to_script) {
    var poststr = strings;
    makePOSTRequest(to_script, poststr, results_container);
  }