  var httpobj = null;
  var http_process_info = null;

  function http_load_info(url) {
    if (typeof window.ActiveXObject != 'undefined' ) {
      httpobj = new ActiveXObject('Microsoft.XMLHTTP');
      httpobj.onreadystatechange = http_receive_info;
    } else {
      httpobj = new XMLHttpRequest();
      httpobj.onload = http_receive_info;
    }
    httpobj.open( 'GET', url, true );
    httpobj.send( null );
  }

  function http_receive_info() {
    if (httpobj.readyState!=4 /*|| httpobj.status!=200*/)   return;
    if (http_process_info)    http_process_info(httpobj.responseText);
    else  document.write(httpobj.responseText);
  }


/*  Create a function like this in your application to process the returned data.
    The remote process you create should return "not found" if there is no data.
    Format of the returned data is between you and the application.
  http_process_info = function(info) {
   // 'info' is straight text, terminated with newlines
    if (info == 'not found') {
      // do something if the data is not found
    } else {
     // Otherwise, do something with the data
      var rows = info.split('\\n');
      for (var r in rows) {
       // write information to div, for fields, whatever.
      }
    }
  }
*/
/*  Create a function like this to begin the process.  It should be triggered
    off a mouse click, or change in form data.  The remote process should use
    the key value as a search parameter, or command code.  Starting the process
    may be delayed until a certain number of characters is reached.
  function functionName(obj) {
    if (obj.value.length>=6)
        http_load_info('path-to-remoteprocess.php?key='+obj.value);
  }
*/

