Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Отправка формы. Не отрабатывает POST. (http://www.flasher.ru/forum/showthread.php?t=110940)

Ведьмак 11.04.2008 20:13

Отправка формы. Не отрабатывает POST.
 
Доброго времени суток, уважаемые.. Есть форма, ее нужно отправить
Код:

var s_and_l_obj:LoadVars = new LoadVars();
s_and_l_obj.sender_name = name_ti.text;
s_and_l_obj.sender_mail = mail_ti.text;
s_and_l_obj.letter_text = ta.text;
s_and_l_obj.sendAndLoad("feedback.php",rec_obj,"POST");
errors_field.textColor = 0x02b6ea;
errors_field.text = "Отправка..";

Если пишем POST приходит пустой маасив, если GET, то передает нормально.. Почему? Как заставить работать POST?

iNils 11.04.2008 20:17

А код без лишний табуляции никак нельзя было написать?

А если вообще убрать третий параметр?

Ведьмак 11.04.2008 20:24

сорри.. можно было - глаза замылены уже..

тоже пусто.. попробовал примеры из хэлпа - то же POST не проходит...

iNils 11.04.2008 20:31

А код php какой?

Ведьмак 11.04.2008 20:38

Код:

<?
  header("Content-type: " . "text/xml; charset=utf-8");
  header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
  header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past

  echo "<!-- get: ";
  var_export($_GET);
  echo ", post: ";
  var_export($_POST);
  echo " -->";

  if (!isset($_POST['message'])) {
    echo "<response code=\"500\">Какая-то ошибка</response>";
  } else {
    echo "<response code=\"200\">Ваше сообщение отправлено</response>";
  }
?>

назад я получаю XML от сервера... кстати, она приходит в любом случае )

iNils 11.04.2008 20:52

Код рабочий.
Кстати, а "массив" это у вас что?

Ведьмак 11.04.2008 20:56

неважно))) это я так выразился) вроде это называют - хэш.. я довольно далек от SSL..

а что тогда может быть не так?

iNils 11.04.2008 21:10

Эээ. Вообще, должно быть одно echo, а не 125. Сформируйте строку, а потом отправляйте.
И покажите, что вам возвращает такой код
Код:

var lv:LoadVars = new LoadVars ();
var lv2:LoadVars = new LoadVars ();
lv.sender_name = "1";
lv.sender_mail = "2";
lv.message = "3";
lv2.onLoad = function () {
        txt.text = unescape (this);
};
lv.sendAndLoad ("feedback.php", lv2, "POST");


Ведьмак 11.04.2008 21:14

Во первых нашел у себя одно ошибку - у меня поле названо "letter_text", а в скрипте "message"...

В текстовом поле и при GET и при POST
Код:

array (
  'message' => '3',
  'sender_mail' => '2',
  'sender_name' => '1',
) --><response code="200">xxx</response>&onLoad=[type Function]

т.е. все ок... вот только почему-то FireBug, которому я привык доверять и который мне показывал запросы и ответы, и их результаты при POST показывает
Код:

<!-- get: array (), post: array () -->
<response code="500">xxx</response>

а при GET все нормально...

Значит все передавалось... СПАСИБО.. )


Часовой пояс GMT +4, время: 12:52.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.