bulya123
19.08.2009, 13:00
Всем привет!
Возникла следующая проблема, нужно срочно решить, буду очень благодарен за ответы:drinks:
Задача наладить связь между два флэшками через LocalConnection, одна выступает в роли отправителя данных, другая в роли получателя и обработчика.
У отправителя есть текстовое поле phone_txt и кнопка send_btn. Пользователь воодит номер телефона и жмет на кнопку отправить, функция validPhone проверяет верность введенных данных и при нажатии на кнопку отправляет переменную REQUEST во вторую флэшку.
ОТПРАВИТЕЛЬ:
phone_txt.border = true;
phone_txt.borderColor = 0x000000;
var REQUEST:XML;
var login_out:LocalConnection = new LocalConnection();
function validPhone(phoneNumber:String):Boolean {
if (phoneNumber.length == 10 && isNaN(phoneNumber) == false) {
return true;
} else {
return false;
}
}
send_btn.onRelease = function() {
if (validPhone(phone_txt.text) == true) {
var REQUEST:XML = new XML("<request type=\"login\"><phone>"+phone_txt.text+"</phone></request>");
login_out.send("login","phone",REQUEST);
trace("отправили");
} else {
trace("ошибка");
error_txt.text = "Телефон должен содержать 10 цифр";
}
};
REQUEST отправляется в виде XML файла так надо:)
Вся проблема в получателе. В получателе содержиться табличка USERS с номерами телефонов, пин-кодами и именами абонентов.
ПОЛУЧАТЕЛЬ
var USERS:Array = new Array(
[9035231127, 7777, "Петр Петрович", "Шлагбаум"],
[9034234233, 2343, "ВАСИЛИЙ", "ДУРАК"],
[9544665656, "Роман", "Трахтенберг"]
);
var k:Number = 0;
var login_in:LocalConnection = new LocalConnection();
login_in.connect("login");
login_in["phone"] = function (REQUEST:XML):Void {
for (i=0; i<USERS.length; i++) {
if (USERS[i][0] == REQUEST.firstChild.firstChild.firstChild) {
if(!isNaN(USERS[i][1])) {k=1; trace("1")} else {k=2; trace("2")}
} else {k=3; trace("3")}
}
};
Ошибка возникает при проверке на равенство введенного телефона и телефона из таблицы:
USERS[i][0] == REQUEST.firstChild.firstChild.firstChild
Типы переменных не совпадают USERS[i][0] типа Number, а REQUEST.firstChild.firstChild.firstChild типа Object.
Первый вопрос почему так получилось?:)
Второй как поправить?:)
В принципе все. Всем заранее большое спасибо за ответы, с меня :drinks:
Возникла следующая проблема, нужно срочно решить, буду очень благодарен за ответы:drinks:
Задача наладить связь между два флэшками через LocalConnection, одна выступает в роли отправителя данных, другая в роли получателя и обработчика.
У отправителя есть текстовое поле phone_txt и кнопка send_btn. Пользователь воодит номер телефона и жмет на кнопку отправить, функция validPhone проверяет верность введенных данных и при нажатии на кнопку отправляет переменную REQUEST во вторую флэшку.
ОТПРАВИТЕЛЬ:
phone_txt.border = true;
phone_txt.borderColor = 0x000000;
var REQUEST:XML;
var login_out:LocalConnection = new LocalConnection();
function validPhone(phoneNumber:String):Boolean {
if (phoneNumber.length == 10 && isNaN(phoneNumber) == false) {
return true;
} else {
return false;
}
}
send_btn.onRelease = function() {
if (validPhone(phone_txt.text) == true) {
var REQUEST:XML = new XML("<request type=\"login\"><phone>"+phone_txt.text+"</phone></request>");
login_out.send("login","phone",REQUEST);
trace("отправили");
} else {
trace("ошибка");
error_txt.text = "Телефон должен содержать 10 цифр";
}
};
REQUEST отправляется в виде XML файла так надо:)
Вся проблема в получателе. В получателе содержиться табличка USERS с номерами телефонов, пин-кодами и именами абонентов.
ПОЛУЧАТЕЛЬ
var USERS:Array = new Array(
[9035231127, 7777, "Петр Петрович", "Шлагбаум"],
[9034234233, 2343, "ВАСИЛИЙ", "ДУРАК"],
[9544665656, "Роман", "Трахтенберг"]
);
var k:Number = 0;
var login_in:LocalConnection = new LocalConnection();
login_in.connect("login");
login_in["phone"] = function (REQUEST:XML):Void {
for (i=0; i<USERS.length; i++) {
if (USERS[i][0] == REQUEST.firstChild.firstChild.firstChild) {
if(!isNaN(USERS[i][1])) {k=1; trace("1")} else {k=2; trace("2")}
} else {k=3; trace("3")}
}
};
Ошибка возникает при проверке на равенство введенного телефона и телефона из таблицы:
USERS[i][0] == REQUEST.firstChild.firstChild.firstChild
Типы переменных не совпадают USERS[i][0] типа Number, а REQUEST.firstChild.firstChild.firstChild типа Object.
Первый вопрос почему так получилось?:)
Второй как поправить?:)
В принципе все. Всем заранее большое спасибо за ответы, с меня :drinks: