|
|
|
| В общем-то, поиск я изучил по этой проблеме :))
Но только все способы основываются на подключении, отличающемся от моего...
А что-то под свой метод я не могу ниче придумать :(((
ХЕЛП, плиз =))
html
<html>
<head>
<title>My TEST AJAX</title>
<script type="text/javascript">
var httpRequest = createHttpRequest();
var resultId = '';
function createHttpRequest()
{
var httpRequest;
var browser = navigator.appName;
if (browser == "Microsoft Internet Explorer")
{
httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
}
else
{
httpRequest = new XMLHttpRequest();
}
return httpRequest;
}
function sendRequest(file, _resultId, getRequestProc)
{
resultId = _resultId;
document.getElementById(resultId).innerHTML = 'Подождите, идет загрузка...';
var txt = document.getElementById("txt").value;
httpRequest.open('post', file + '?asd=' + txt);
httpRequest.onreadystatechange = getRequestProc;
httpRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=windows-1251");
httpRequest.send(txt);
}
function getRequest()
{
if (httpRequest.readyState == 4)
{
document.getElementById(resultId).innerHTML = httpRequest.responseText;
}
}
</script>
</head>
<body>
<input type="text" id="txt" onkeypress="if (event.keyCode==13) sendRequest('test.php','result',getRequest);">
<p id="result">Здесь будет результат запроса</p>
</body>
</html>
|
php
<?php
echo $_POST["asd"]ж
?>
|
P.S.: ест-но с GET работает - проверял | |
|
|
|
|
|
|
|
для: ddhvvn
(26.11.2007 в 18:57)
| | Вот так должно быть:
httpRequest.open('post', file);
httpRequest.send(asd=txt);
|
| |
|
|
|
|
|
|
|
для: coloboc66
(27.11.2007 в 09:13)
| |
httpRequest.send("asd=txt");
|
Если быть точнее | |
|
|
|
|
|
|
|
для: bronenos
(27.11.2007 в 09:39)
| | А может, так:
httpRequest.send("asd="+txt);
|
| |
|
|
|
|
|
|
|
для: coloboc66
(27.11.2007 в 10:46)
| | бля... я забыл что там текст генерится... как-то не посмотрел на эту часть кода, а лишь поправил отсутствие кавычек...
тогда лучше вообще так =)
httpRequest.send("asd="+encodeURIComponent(txt));
|
| |
|
|
|
|
|
|
|
для: bronenos
(27.11.2007 в 11:20)
| | Ок,спасибо.
Вроде работает! | |
|
|
|
|
|
|
|
для: ddhvvn
(27.11.2007 в 11:56)
| | как будет выглядеть строка
httpRequest.send("asd="+txt);
|
если нужно передать ещё 1 параметр sed=3
var ddd = document.getElementById("sed").value;
|
И что делает getRequest ? | |
|
|
|
|
|
|
|
для: Port_Artur1
(30.11.2007 в 08:45)
| | httpRequest.send("asd="+encodeURIComponent(txt),"asd1="+encodeURIComponent(txt1));
А почему то под Оперой не работает!!!!!!! | |
|
|
|
|
|
|
|
для: Port_Artur1
(30.11.2007 в 10:44)
| | На серверной стороне обрабатывается глобальный массив $_POST, а вы вместо массива пытаетесь подсунуть серверу непонятную смесь строк и переменных.
А в других броузерах работает разве??? | |
|
|
|
|
|
|
|
для: coloboc66
(30.11.2007 в 11:49)
| | не не работает а как правильно написать подскажите пожалуйста? | |
|
|
|
|
|
|
|
для: Port_Artur1
(30.11.2007 в 12:04)
| | Самый примитивный (и далеко не лучший, наверное) вариант, не знаю - будет ли работать
httpRequest.send("asd1="+txt1);
httpRequest.send("asd2="+txt2);
|
Неохота думать... | |
|
|
|
|
|
|
|
для: coloboc66
(30.11.2007 в 13:26)
| | надо данные передавать разделенные символом амперсандом | |
|
|
|
|
|
|
|
для: bronenos
(30.11.2007 в 13:33)
| | Вот так:
httpRequest.send("asd1="+txt1+"&asd2="+txt2);
|
И будет работать? Кто-нибудь пробовал? | |
|
|
|
|
|
|
|
для: coloboc66
(30.11.2007 в 13:36)
| | и с амперспандом тоже работает! | |
|
|
|
|
|
|
|
для: coloboc66
(30.11.2007 в 13:26)
| | Спасибо всем кто помогал!!!
Всё отлично работает | |
|
|
|
|
|
|
|
для: Port_Artur1
(30.11.2007 в 13:40)
| | Так какой вариант работает, хоть скажите. Самому интересно. | |
|
|
|
|
|
|
|
для: coloboc66
(30.11.2007 в 13:41)
| | Работает и с амперсандом! | |
|
|
|
|
|
|
|
для: coloboc66
(30.11.2007 в 13:41)
| | coloboc66, работает с амперсандом (поскольку это родная форма передачи данных по GET, и send'ом) | |
|
|
|
|
|
|
|
для: bronenos
(30.11.2007 в 14:28)
| | есть проблема - не смотря на код ниже если в вызываемом фале есть кириллица, то она почему то тображается как синий ромб с вопросом посредине причём все кириллические буквы как это исправить?
httpRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=windows-1251");
|
в вызываемом файле стоит вот что - что с нгим что без него всё-равно
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
|
До этого , когда пользовался обычным POST таких проблем небыло помогите пожалуйста
я уже в тупик зашёл!!! | |
|
|
|
|
|
|
|
для: Port_Artur1
(30.11.2007 в 21:47)
| | Для аякса нужно всё делать (отправлять и принимать данные) в кодировке UTF-8. | |
|
|
|
|
|
|
|
для: coloboc66
(01.12.2007 в 12:51)
| | кто сказал?
я отправляю в винде, принимаю в винде и отвечаю в винде (windows-1251) | |
|
|
|
|
|
|
|
для: bronenos
(01.12.2007 в 13:02)
| | Я сказал. Эта кодировка может работать с любыми языками., вплоть до китайского, наверное. А то, что можно и в винде извратиться и всё будет работать - не спорю. Но тут нужно помудохаться, как слесарю-гинекологу. | |
|
|
|