Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> AJAX не передаёт данные с $_POST, Проблемы с передачей данных в ajax 
V
    Опции темы
zxxz
Дата 3.2.2011, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 36
Регистрация: 27.10.2010

Репутация: нет
Всего: нет



Вопрос решен. У меня ошибка в коде где то. Ни AJAX ни PHP невиноваты.
Извините за безпокойство. 



 Решил создать отдельную тему. Не могу понять почему не работает.
Код

try{
ajax.open("POST","server.php",true);
ajax.setRequestHeader('Content-type', 'application/x-www-form-urlencoded; charset=utf-8');
ajax.setRequestHeader('Content-length', params.length);
ajax.setRequestHeader('Connection', 'close');
if(params!=null){ajax.send(params);     window.alert(params);}
}
catch(e)
{alert(e.toString())}
}//if




alert -всплывает параметр показывает. server.php принимает:
Код


$data = file_get_contents('php://input');
echo $data."<br>";
print_r($_POST);



Результат:
1
Array ( )

Post проверял с emrty($_POST)  получается true. Пробовал делать форму и посылать самому себе на прямую. Там POST работает.Почему не понимаю, пол дня уже гуглю и ничего не нашёл кроме как поменять Content-Type. 
В php.ini    post_max_size 8M; 
Может кто уже сталкивался и знает как полечить? Помогите разобраться, пожалуста.

Это сообщение отредактировал(а) zxxz - 3.2.2011, 17:26
PM MAIL WWW   Вверх
MoLeX
Дата 3.2.2011, 10:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



Код

ajax.open("POST",server.php,true);


меня смущает эта строка. Я не силен в JS, но там кажется нужны кавычки:
Код

ajax.open("POST", "server.php", true);


Добавлено через 3 минуты и 5 секунд
и почему не воспользоваться jQuery, motools, etc?


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
zxxz
Дата 3.2.2011, 10:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 36
Регистрация: 27.10.2010

Репутация: нет
Всего: нет



MoLeX, я код вертел по разному, видимо оставил эту ошибку в вопросе. На самом деле если неправильно указать путь к серверу будет ошибка 404.
В оригинальном коде всё верно. И данных как не было так и нет. :-(
PM MAIL WWW   Вверх
z-END
Дата 3.2.2011, 11:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

Репутация: 5
Всего: 102



а что это за аякс?! 
возможно:
1. кривой код у этой аякс библиотеки (юзайте jQuery)
2. очень бросается в глаза тот факт что сразу после ajax.send() используется alert(params) получается пока ответ от сервера не будет получен скрипт зависает?! тогда это не аякс.. где же тут асинхронная передача?!  99% мне каюется нужно устанавливать дополнительно в setOptions обработчик ответа от сервер.


--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
zxxz
Дата 3.2.2011, 11:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 36
Регистрация: 27.10.2010

Репутация: нет
Всего: нет



Не пойму в чём кривизна. Лапша из проверок появилась после ошибки. Эти проверки мене не нужны это вообще был пробный код.
Суть не меняется. Пробовал полностью комментить Content-Type тоже безуспешно.
Это то что было до ошибки:
Код

try{
ajax.open("POST","server.php",true);
ajax.setRequestHeader('Content-type', 'application/x-www-form-urlencoded; charset=utf-8');
ajax.setRequestHeader('Content-length', params.length);
ajax.setRequestHeader('Connection', 'close');
ajax.send(params);
}
catch(e)
{alert(e.toString())}



JQuery не использую по тому что ещё не разобрался-разбираюсь(right now). 
PM MAIL WWW   Вверх
z-END
Дата 3.2.2011, 12:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прафесар™
****


Профиль
Группа: Комодератор
Сообщений: 3014
Регистрация: 13.3.2003
Где: Венья, Пиетари

Репутация: 5
Всего: 102



Цитата(z-END @  3.2.2011,  12:09 Найти цитируемый пост)
очень бросается в глаза тот факт что сразу после ajax.send() используется alert(params) получается пока ответ от сервера не будет получен скрипт зависает?! тогда это не аякс.. где же тут асинхронная передача?!  99% мне каюется нужно устанавливать дополнительно в setOptions обработчик ответа от сервер.




--------------------
Каждый чилавек пасвоему праф...а памоему НЕТ! 

PM WWW ICQ   Вверх
zxxz
Дата 3.2.2011, 16:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 36
Регистрация: 27.10.2010

Репутация: нет
Всего: нет



Очень может быть что на самом деле я что то в коде накосарезил. Сейчас попробую с JQuery тоже самое сделать.
PM MAIL WWW   Вверх
zxxz
Дата 3.2.2011, 17:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 36
Регистрация: 27.10.2010

Репутация: нет
Всего: нет



Array ( [param] => ok )
Да.
Это я сам где то накосорезил. Только не пойму где. Буду разбираться.
JQuery-интересная штука, скоро ручками ничего делать не будем.  smile 
Спасибо всем. Извините за то, что с глупостями потревожил.

PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.4019 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.