Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   Flash и PHP помогите разобраться (http://www.flasher.ru/forum/showthread.php?t=77724)

Nose 30.03.2006 21:02

Flash и PHP помогите разобраться
 
Изучаю я сейчас книгу "Д. Гурский. Action Script 2.0". И вот в разделе 17.3.2 автор приводит небольшой пример проверки пароля при помощи PHP:
PHP код:
PHP код:

<?php
if($_POST["password"]=='12345'){
   echo 
'message=TRUE';
} else {
   echo 
'message=ERROR';
}
?>

Action Script:
Код:


stop();
this.createEmptyMovieClip("clip", 1);
but.onRelease = function() {
        clip.password = pass.text;
        loadVariables("http://vitalik.eclub.lv/password.php", clip, "POST");
};
clip.onData = function() {
        if (this.message == "TRUE") {
                _root.gotoAndStop(2);
        } else {
                info.text = "Пароль ложный";
        }
};

Размещаю flash и php файлы на сервере, запускаю и при проверке всегда выходит надпись "Пароль ложный". Попробовал добавить в onData строку info.text += this.message, добавляет “undefined” . PHP я вообще не знаю, поэтому подскажите, может я где-то допустил ошибку?

дядя Джо 31.03.2006 03:51

Дорогой товарищь, в php разобраться не сложно. Попробуем для начала проверить, правильно ли выдает этот самый php нашу переменную для этого немного изменим скрипт, заменим $_POST["password"] на $_REQUEST["password"] и в адресной строке браузера наберем http://vitalik.eclub.lv/password.php?password=12345 . Если в ответ в браузере мы увидим message=TRUE и ничего лишнего, то значит php работает отлично, и не изменяя больше скрипт файла мы можем дальше анализировать правильно ли работает у нас action script. Удачи вам дорогой товарищь :bye:

Antares 31.03.2006 04:46

onData вызывается при приходе чистых, девственных, ничем почти не тронутых данных
поэтому искать там распарсенные переменные я бы не стал. Это к onLoad.

Nose 31.03.2006 16:31

Цитата:

Сообщение от дядя Джо
заменим $_POST["password"] на $_REQUEST["password"]

Заменил, выдёт message=TRUE. А что это за $_REQUEST, мне надо его использовать вместо $_POST ?

Цитата:

Сообщение от Antares
onData вызывается при приходе чистых, девственных, ничем почти не тронутых данных
поэтому искать там распарсенные переменные я бы не стал. Это к onLoad.

Переписал код для on Load и перечислил свойства объекта loader при помощи for-in:
Код:

var sender:LoadVars = new LoadVars();
var loader:LoadVars = new LoadVars();
but.onRelease = function() {
        sender.password = pass.text;
        sender.sendAndLoad("http://vitalik.eclub.lv/password.php", loader, "POST");
};
loader.onLoad = function() {
        for (var i in loader) {
                info.text += i+"********";
        }
};

По идее код мне должен был выдать свойства onLoad и message, но наделе вот что вышло:
Код:

<td valign********#1091; | </a><a href********#257;mu</a>


-- // -->


<table bgcolor********#1073;********#299;rs</a> <br /><a href********#257;rijs, Manik********#275;tava, Sol********#1103;</a> <br /><a href********#1087;********#1086; ********#1075;********#1072; ********#1074;********#1085;********#1089;********#1082;</a> <br /><a href********#1099;********#1079;********#1103;********#1086;********#1088;, ********#1052;********#1085; ********#1076;******** document.body.clientHeight >********type********rn********t********#257;mu</a></td><tr><td>

<script type********#275;gt rekl********ln********#1091;</a> / <a href********#1084;********#1072;********#1077;********#1088;********#1100; ********#1080;********#1095;********#1102;********#1083;********#1082;********#1090;********#1054;********<body  onload********onLoad********

хотя onLoad вконце есть, так что тогда всё перед onLoad это мне вместо message?

Constantine 31.03.2006 23:08

Цитата:

Сообщение от Nose
Заменил, выдёт message=TRUE. А что это за $_REQUEST, мне надо его использовать вместо $_POST ?

$_REQUEST = $_GET + $_POST + $_COOKIE, т.е. использовать стоит только в том случае, когда источник значения переменной неважен...


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

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