function vytvorXHR(){
    var xhr;

    var MSXmlVerze = new Array('MSXML2.XMLHttp.6.0','MSXML2.XMLHttp.5.0','MSXML2.XMLHttp.4.0','MSXML2.XMLHttp.3.0','MSXML2.XMLHttp.2.0','Microsoft.XMLHttp');
    try {
        xhr = new XMLHttpRequest();
    } catch(e) { //pro případ starší verze prohlížeče
        for (i = 0; i < MSXmlVerze.length; i++) {
            try {
                xhr = new ActiveXObject(MSXmlVerze[i]);
                //alert(MSXmlVerze[i]);
                break;
            } catch(e) {
            //vzniklou chybu ignoruji a pokračuji nastavením další verze
            }
        }
    }
    //if(!xhr)
    //alert("Došlo k chybě při vytváření objektu XMLHttpRequest!");
    //else
    return xhr;
}
function vytvorPozadavek(url, data, fce){
    if(xhr){
        if(xhr.readyState==0 || xhr.readyState==4){
            try {
                xhr.open("POST", url);
                xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
                xhr.send(data);
                xhr.onreadystatechange = function(){
                    uni(fce);
                }; //dojde-li ke změně, volej funkci volanaFunkce
                
            }catch(e){
            //alert("Nelze se připojit k serveru:\n" + e.toString());
            }
        }
    } else {
//alert("Chybí objekt XMLHttpRequest!");
}
}

function uni(fce){
    if(xhr.readyState == 4){ //funkci provedeme, pokud je požadavek ve stavu dokončeno
        if(xhr.status == 200){ //pokračuji, jen když je vše OK
            fce(xhr.responseText);
        }else{
    //alert("Vámi definovaný prostředek nelze nalézt!\nChyba: "+xhr.status);
    }
    }
}

xhr=vytvorXHR();

