Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Неправильный ответ скрипта во флеху (http://www.flasher.ru/forum/showthread.php?t=164606)

DZHETIGAPA 17.08.2011 17:20

Неправильный ответ скрипта во флеху
 
Какая-то интересная проблема возникает. Задача отослать на пхп скрипт переменную и в зависимости от этой переменной получить ответ скрипта.

Код AS3:

var uReq:URLRequest = new URLRequest("example.php");
var variab:URLVariables = new URLVariables("code="+text1.text);
uReq.method = URLRequestMethod.POST;
uReq.data = variab;
var loader:URLLoader = new URLLoader();
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
loader.addEventListener(Event.COMPLETE, onComplete);
loader.load(uReq);
trace(variab.code);
 
private function onComplete(e:Event):void
{
        trace(e.target.data.response);
}

Тут все трейсится и все работает.

Вот примитивный пхп код:
Код:

if($_POST['code']=='1111')
    {
      print 'response=yes';
    }
    else
    {
      print 'response=no';
    }

По логике вещей все дожно работать. Оно и работает, только условие не выполянется в 80% случаев и трейс показывает "no", хотя я и ввожу правильные данные, а иногда в 20% случаев все работает и выполняется. В чем может быть дело? Тут какая-то ошибка пхп кода. Не выполянется условие и в большинстве случаев мне выдается 'response=no';

Кто сталкивалс с такими непонятками?

in4core 17.08.2011 17:23

Мне кажется кто то колдует....:(

DZHETIGAPA 17.08.2011 17:28

а если серьезно? или может что забыл указать и дописать во флеше?

Genzo 17.08.2011 17:37

Попробуйте не $_POST , а $_REQUEST. Какая версия php на сервере?

GBee 17.08.2011 17:43

может кэш?
variab.rnd = Math.random();

carrotoff 17.08.2011 17:47

В запрос добавьте параметр
Код AS3:

rnd = new Date().getTime();

upd: опередили)

DZHETIGAPA 17.08.2011 17:49

Цитата:

Сообщение от Genzo (Сообщение 1022576)
Попробуйте не $_POST , а $_REQUEST. Какая версия php на сервере?

Это я еще в самом начале пробовал, не катит.

И ни кеш. тоже пробовал. У меня и на локалке и на серваке аналогично.

carrotoff 17.08.2011 17:53

Логируйте ответ сервера, например, в файл на серваке, ну, то есть, все ваши принты пишите в буфер (ob_start), а потом результат записывайте в файл, посмотрите, что приходит, что уходит.

Осуществляйте проверку не просто операцией сравнения, а с помощью сравнения с проверкой типа.
Ну, если загоняться, я рассмотрел все более менее адекватные способы локализации проблемы.

Но обычно, такие проблемы связаны с невнимательностью разработчика. Еще раз всё внимательно перепроверьте. Уверен, ошибка ближе, чем кажется.

Genzo 17.08.2011 17:54

Посмотрите что дает var_dump постов , может пхп воспринимает 1111 как int

DZHETIGAPA 17.08.2011 18:05

Спасибо. Щас буду пробовать, что вы советовали. А пока попробовал вернуть обратно во флеху переменную, которую передал скрипту. И самое что интересное - во флеху переменная не приходит, вернее приходит но пустая переменная.

Добавлено через 6 минут
Вроде проблему решил. Он отправлял на сервер число, а не строку. Мда.. как-то странно...


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

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