![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|||||
|
Пытаюсь сделать login form на флеше, нужно сделать под 5 версию флеша.
есть кнопка, которая отправляет данные скрипту: on (release) { if (this.UserLogin == undefined or this.UserLogin == "") { this.LoginError = "Please, enter login..."; } else if (this.UserPassword == undefined or this.UserPassword == "") { this.LoginError = "Please, enter password..."; } else { this.LoginError = undefined; } if (this.LoginError == undefined or this.LoginError == '') { this.LoginData = "UserLogin=" + this.UserLogin + "&UserPassword=" + this.UserPassword; loadVariables("index.php?" + this.LodinData, this, "POST"); this.gotoAndPlay(2); } } в 2 кадре пишу просто: play(); в 3 кадре: if (this.answer == undefined) { prevFrame(); } else if (this.answer == "1") { _root.gotoAndPlay("final"); } else if (this.answer == "0") { this.LoginError = "Wrong user name or password, please try again..."; this.gotoAndStop(1); } stop(); Бывает так, что при вводе заведомо верного логина и пароля и нажатии на кнопку ничего не происходит, а если нажать второй раз то всё срабатывает. Как проверять пришел лли ответ от сервера, чтобы при нажатии на кнопку оно отрабатывало по-человечески. Или дело вообще не в этом ? |
|
|||||
|
Выкладывай исходник, без графики, если боишься. Так с виду, вроде правильный код. Ты пробовал дебагить? помогает...
__________________
Не всё то флэш, что шевелиться. |
|
|||||
|
Спасибо, я уже врубился в чем была фишка, сразу 3 глюка было:
1. почему-то некорректно срабатывал откат prevFrame(); пришось заменить на this.gotoAndPlay(frameNumber); 2. при нажатии на кнопку я не обнулял предыдущий ответ от сервера из-за этого при неверном первом логине и пароле всё время висела ошибка и проверки не отрабатывали 3. пришлось разделить вывод ошибок ввода пользователя от вывода ошибок ответов сервера. смотреть мона тут, может заметите глюки: http://test.ddiweb.net/interface/ P.S. Может подскажете как сделать, чтобы наезд формы для ввода пароля и логина не был таким дерганным, а то и так всю сложную графику запихнул в один png на bg, но всё равно немного тормозит. |
|
|||||
|
Увеличь fps и растяни момент наезда панели с полями для логина и пасса.
__________________
Не всё то флэш, что шевелиться. |
|
|||||
|
Все эти штучки с паролями очень легко ломаются.
Сначала берём скачиваем твой мувик, потом раскладываем его с помощью ломанного Sothink SWF Decompiler'a. Смотрим куда и как посылается запрос на пароль. Потом берём какой-нибудь продвинутый HTTP Requester и постим подбором разные варианты по адресу http://test.ddiweb.net/interface/ind...serPassword=xx , ждём response answer=1 А можно вообще покопаться в твоём мувике в сцене final и посмотреть всё, что надо. То есть тебе надо загружать final в контейнер основного мувика. И только если этот контейнер обращается с вебсервера. Короче полный гемор. Даже если давать на скачивание основной мувик для зарегистрированных пользователей, можно я думаю что-нибудь придумать, чтобы сымитировать контейнер. Вместе с request'oм посылать параметры, необходимые серверу для идентификации. Тут и хакеру придётся попотеть. Так что могу потестить твою систему, если хочешь.
__________________
Не всё то флэш, что шевелиться. |
|
|||||
|
fps сейчас стоит 24. Если растяну момент наезда будет видна битая растровая картинка, а этого хотелось бы избежать, поэтому наезд такой быстрый.
Штучки с паролем ты не сломаешь не сломав сервера, так как пароли и логины будут храниться в базе, и при вводе логина и пароля скрипт проверяет корректность ввода, этот же скрипт и отдает ролик, если ты загрузишь ролик себе целиком тебе это ничего не даст, так как контент ролика так же будет отдаваться скриптом и только в том случае если ты прошел авторизацию Авторизация вообще реализована через сессии.Да и вообще на самом деле авторизация сделана не для того, чтобы что-то скрыть, а для того, чтобы знать как юзер проходит тесты, чтобы составлять статистику. Незарегестрированный юзер просто не сможет работать с системой. |
|
|||||
|
А вариант преребора логина и пароля меня не волнует, так как любая система ломается методом перебора.
![]() Как гриться перебирайте скока хатите. |
![]() |
Часовой пояс GMT +4, время: 05:33. |
|
|
« Предыдущая тема | Следующая тема » |
|
|