function getXmlHttp(){


var req;

if (window.XMLHttpRequest) req = new XMLHttpRequest(); 
else if (window.ActiveXObject) {
    try {
        req = new ActiveXObject('Msxml2.XMLHTTP');
    } catch (e){}
    try {
	req = new ActiveXObject('Microsoft.XMLHTTP');
    } catch (e){}
}
return req;


}
// javascript-код голосования из примера
function gl(get_url, get_span, get_method, get_postdata) {

	//its_file=0;
	//if(get_method=='POSTFILE'){get_method='POST';its_file=1;}

	if(!get_span)get_span='result';
	if(!get_method)get_method='GET';
	if(!get_postdata)get_postdata='null';
	// (1) создать объект для запроса к серверу

	var req = getXmlHttp();
        	//alert(get_postdata);
	if(!req){alert('no ajax');
		 return false;
	}

        // (2)
	// span рядом с кнопкой
	// в нем будем отображать ход выполнения
	var statusElem = document.getElementById(get_span);
	//alert(statusElem.innerHTML);	
	req.onreadystatechange = function() {  
        // onreadystatechange активируется при получении ответа сервера

		if (req.readyState == 4) { 
            // если запрос закончил выполняться

			if(req.status == 200) { 
                 // если статус 200 (ОК) - выдать ответ пользователю

                                //alert(req.responseText);

				try{
					statusElem.innerHTML = req.responseText;
				}
				catch (zz){
					// html tags prohibited <p>, <table> etc.  ->http://innerhtml.ru/
					statusElem.innerHTML = 'Internet Explorer do not support this function.';
				}
			}else{
				statusElem.innerHTML = req.statusText; // показать статус (Not Found, ОК..)

			}
			// тут можно добавить else с обработкой ошибок запроса
		}

	}
        var IE='\v'=='v';
	if(IE==true)get_url=get_url+'&ie=1';

       // (3) задать адрес подключения
	req.open(get_method, get_url, true);  

	// объект запроса подготовлен: указан адрес и создана функция onreadystatechange
	// для обработки ответа сервера
	//if(its_file)req.setRequestHeader('Content-Type', 'multipart/form-data');
	//else 
	if(get_postdata!='null') req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        // (4)
	req.send(get_postdata);  // отослать запрос


  
        // (5)
	statusElem.innerHTML = '<img src="./img/wait.gif" width="50" height="50">';


}



