![]() |
|
||||||||||
|
|||||
|
Регистрация: Sep 2012
Сообщений: 204
|
Была задача интергрирвать капчу с PHP. Долго рабирался, и вот на финишной прямой. Загвоздка в том, что я не могу придумать как запустить процесс обработки скрипта PHP без самой формы PHP. в той форме есть кнопка Submit, по которой начинается обработка. Как же мне её "заменить" через флэш? может каким то особым способом? Обычные переменные я засылаю так:
function ValidateAndSend (event:MouseEvent):void { variables.security_code = input_txt.text; variables.personalDataName = name_txt.text;
|
|
|||||
|
Цитата:
http://www.hardcode.nl/archives_9/ar...ata-in-as3.htm |
|
|||||
|
Регистрация: Sep 2012
Сообщений: 204
|
ну так функция ValidateAndSend все так и делает методом POST. Я просто весь код не копировал сюда. но тем не менее скрипт не запускается.
правильно ли я понял что получив переменную, PHP её сразу воспримет как POST? то есть не надо дополнять код Не понятно главное- какое значение мне надо приписать переменной submit? что я только не пробовал, даже абсурдные идеи разбирал тут 1 пример ответа PHP в AS3. попробовал изменить как было и там добавил в АС а PHP изменил но опять ничего не работает (( не возвращает мне ничего Последний раз редактировалось pomuс; 13.10.2012 в 00:25. |
|
|||||
|
Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
|
public function SenderToPhp() { var sendVariables:URLVariables = new URLVariables(); sendVariables.var1 = "var1"; // Отправляем данные php - скрипту var req:URLRequest = new URLRequest("php_file_path"); //тут пишем путь к пхп скрипту req.method = URLRequestMethod.POST; req.data = sendVariables; var loader:URLLoader = new URLLoader(); loader.addEventListener(Event.COMPLETE, onComplete ); loader.load(req); function onComplete(e:Event):void { try { //e.target.data; trace(e.target.data); //здесь выведется то, что пхп скрипт вернет, через echo } catch (e:TypeError) { trace("Не могу получить ответ от сервера."); } } } |
|
|||||
|
Капча вообще ужасная идея, не только на флеше. Лично меня капчи всегда бесят ). Но суть не в этом, здесь, она не флешевая, а просто должна отображаться средствами флеша.
Цитата:
|
|
|||||
|
Регистрация: Sep 2012
Сообщений: 204
|
Isfet я совсем запутался. Вы предлагаете задать в АС3 переменную, и просто заслать её в php и озвучить. Тут я хочу разъяснить: созданный SWF файл с вашим кодом внутри я подключаю к index.html. А отсылаю в PHP ну напрмиер в test.php. так как же я увижу, отобразится переменная или нет?
caseyryan понятно, но приводить отдельной строкой эти переменные ен надо ,если дальше будет и так указываться метод. То есть не надо писать $var = $_POST['var']; если дальше и так будет $_POST['var'] и кстати почему капча плохая идея? а как же защитить форму от спама тогда... |
|
|||||
|
Регистрация: Mar 2012
Адрес: г.Новосибирск
Сообщений: 381
|
может сначала сделать чтобы она заработала в локальном варианте? прежде чем пихать в html - тег?
Цитата:
чтобы увидеть это в сгенерированной swf можно создавать TextField и в него писать то , что пришло из php скрипта. но еще раз повторюсь, я бы отладил сначало локально. Цитата:
|
|
|||||
|
Регистрация: Sep 2012
Сообщений: 204
|
Цитата:
не знал что так можно, думал PHP считываться будет только на серез сервер.. Получается флеш уже на моем компьютере может взаимодействовать с PHP? сейчас попробую |
![]() |
![]() |
Часовой пояс GMT +4, время: 23:19. |
|
|
« Предыдущая тема | Следующая тема » |
|
|