Показать сообщение отдельно
Старый 10.01.2012, 16:59
Godwarlock вне форума Посмотреть профиль Отправить личное сообщение для Godwarlock Найти все сообщения от Godwarlock
  № 11  
Ответить с цитированием
Godwarlock

Регистрация: Jan 2012
Сообщений: 836
Astraport там использование Adobe Flex, мне нужен Action Script 3, а какой as написать я не знаю, пробую и не получается.

Добавлено через 13 часов 7 минут
Вот
Код AS3:
import flash.net.*;
 
var urlloader:URLLoader = new URLLoader();
var req:URLRequest = new URLRequest();
var login:String;     // логин
var pass:String;        // пароль
var id:int;            // код пользователя
var reg_var:URLVariables = new URLVariables(); //хранилище переменных для передачи в скрипт
var reg_req:URLRequest = new URLRequest("reg.php");
var reg_ldr:URLLoader = new URLLoader();
var login_mask:RegExp = /([a-zA-Z]?[0-9a-zA-Z]+[-._+&])*[0-9a-zA-Z]+@([-0-9a-zA-Z]+[.])+[a-zA-Z]{2,6}/; // шаблон для проверки почтового адреса
var pass_mask:RegExp = /[a-zA-Z]?[0-9a-zA-Z]*/; // шаблон для проверки формата пароля
var words:Array = new Array; // массив для хранения разбитых строк
var win_tmr:Timer = new Timer(4000, 1);        //таймер - определяет как долго будет висеть окно ошибок
 
reg_req.method = URLRequestMethod.POST;    //метод POST
reg_btn.addEventListener(MouseEvent.CLICK, onclickiVhod, false, 0, true);    // обработчик нажатия кнопки
 
function onclickiVhod(e:MouseEvent):void {    // обработка нажатия кнопки
   if ((login_bt.text == "")||(pass_bt.text == "")) {      
       return;
   }
/*-----Проверка правильности ввода логина-----*/    
   words = login_bt.text.split(" ");        // выделяем первое слово из строк
   login = words[0];
   if (!login_mask.test(login)) {        // проверка формата
       return;
   }
/*-----Проверка правильности пароля (1-я буква и содержит только цыфры и буквы латыни)-----*/
   words = pass_bt.text.split(" ");        // выделяем первое слово из строки (авось ввели 2 или больше)
   pass = words[0];
   if (!pass_mask.test(pass)) {        // проверка формата
       return;
   }
   if ((pass.length < 4)||(pass.length > 20)) { // проверка на длинну пароля
       return;                  
   }
   reg_ldr.addEventListener(Event.COMPLETE, completeHandler, false, 0, true);     // обработчик загрузки данных из скрипта
   reg_var.log_usr = login;        //загрузка переменных
   reg_var.pas_usr = pass;
   reg_req.data = reg_var;
   reg_ldr.dataFormat = URLLoaderDataFormat.TEXT;        // определяем формат получения данных
   try {
       reg_ldr.load(reg_req);     // передаем переменные в скрипт и получаем результат
 
 trace ('reg_req == '+ reg_req.data); // ????????????????????????????????????????
   }
   catch (err:Error) {    
   }
}
 
function completeHandler(e:Event):void { //обработка результатов от скрипта
   reg_ldr.removeEventListener(Event.COMPLETE, completeHandler);
   id = int(Number(e.target.data));    //записываем результат как номер пользователя (число больше 0) или код ошибки (- число)
   if (id < 0) {        // обработка кодов ошибок
       return;
   }
trace ('id == '+ id);
 
}
А вот PhP

PHP код:
<?php
include ("connect.php");     // подключение к Базе данных
echo $login $_POST['login'];     // получаем логин
echo $pass $_POST['pass'];     // получаем пароль
if(!empty($id)){
 if(!empty(
$login)){
    if(!empty(
$pass)){
//Заносим в таблицу по нужному id в базу
       //Отправим ответ о удачной записи
       
echo "true";
    }else{
       
// Обрабатываем ошибку, т.к. нет переменной $pass
       // Отправим ответ о неудаче
       
echo "false";
    }
 }else{        
    
// Обрабатываем ошибку, т.к. нет переменной $login
    // Отправим ответ о неудаче
    
echo "false";
 }
}else{        
  
// Обрабатываем ошибку, т.к. нет переменной $id
  // Отправим ответ о неудаче
  
echo "false";
}
$connect_DB mysql_query("SELECT * FROM users WHERE login='".$login."' AND pass='".$pass."'"$db);
if (!
$connect_DB || $connect_DB == '') {
   echo 
"-1";   // вывод кода ошибки -1: не удалось подключиться к БД
   
exit;        // закрыть скрипт
}
$result mysql_fetch_array($connect_DB);      //выполняем запрос
if ($result['id'] == '') {
   echo 
"-2";   // вывод кода  -2: такого пользователя нет
   
exit;        // закрыть скрипт
}
echo 
$result['id'];    //выводим код пользователя во флешку



/*print "count(result) == ".count($result)."<br />";
print "result['login'] == ".$result['login']."<br />";
print "result['pass'] == ".$result['pass']."<br />";
print "result['id'] == ".$result['id']."<br />";
print "<hr />";
if ($result)
{
   foreach ($result as $key => $data)
   echo "result[".$key."] == ".$data."\n <br />";
}
else exit ('Нет таких пользователей!');*/
?>
Но не работает