Войти

Показать полную графическую версию : [решено] XMLHttpRequest параметры GET/POST


rus-4-ever
19-04-2008, 09:03
Здравствуйте... есть такая функция


function loadXMLDoc(url) {
if (window.XMLHttpRequest) {
req = new XMLHttpRequest();
} else if (window.ActiveXObject) {
req = new ActiveXObject("Microsoft.XMLHTTP");
}
if (req) {
req.onreadystatechange = processReqChange;
req.open("GET", url, true);
req.send('a=1');
}

}


При обращении к этой функции результат плучается такой, как будто НИКАКИХ параметров запроса не передавалось методом req.send('a=1');

Если вручную приписать параметры к УРЛ, то результ правильный...

Почему не передаются параметры???

Vlad Drakula
19-04-2008, 09:44
rus-4-ever
гет параметры должны быть заинкожены в урл

rus-4-ever
19-04-2008, 18:19
Хорошо, а если я хочу составить POST запрос?
Просто написать

req.open("POST", url, true);
req.send('a=1');

не достаточно

bruder
19-04-2008, 19:29
хедеры не забываем послать

var req = (window.XMLHttpRequest)?new XMLHttpRequest():new ActiveXObject("Microsoft.XMLHTTP");
param='hallo=myPOST';
req.open("POST", "my.php"+'?'+Math.random(), true);
req.onreadystatechange = function () {
if (req.readyState == 4) {
var txt = req.responseText;
alert(txt);
}
};
req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
req.setRequestHeader("Content-length", param.length);
req.setRequestHeader("Connection", "close");
req.send(param);


на my.php лови переменные из param

Coutty
19-04-2008, 19:50
А я бы рекомендовал воспользоваться библиотекой JsHttpRequest (http://dklab.ru/lib/JsHttpRequest/manual.html).

rus-4-ever
19-04-2008, 20:28
Все, спасибо! разобрался =) вся фишка была как раз в хедерах =)
А вот библиотечку бы подучить




© OSzone.net 2001-2012