function createRequest()
{
    var request = null;

    try
    {
        request = new XMLHttpRequest();
    }
    catch (trymicrosoft)
    {
        try
        {
            request = new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (othermicrosoft)
        {
            try
            {
                request = new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch (failed)
            {
                request = null;
            }
        }
    }

    if (request == null)
    {
        alert("Error creating request object!");
    }
    else
    {
        return request
    }
}

function initRequest(request, receiver)
{
    request.onreadystatechange = receiver;
}

function sendRequest(request, url, method, post_value)
{
    if (method == null)
        method = "GET";

    request.open(method, url, true);

    if (method == "POST")
    {
        request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    }

    request.send(post_value);
}
