PgeorgyV
Прошу прощения, я написал своё сообщение до того как строчка была перечёркнута

А по сути, дела не меняет. Я вот думаю, если посмотреть на статусную строчку браузера, то будет видно, что слишком долго длится фаза "Передача данных с домена...". Хотя передавать там считанные байты. И всё равно письмо приходит, но ни одного поля нет.
Вот то что у меня на текущий момент написано:

Код AS3:
w_send.addEventListener(MouseEvent.CLICK, send_mail);
var var_load: URLLoader = new URLLoader();
var URL_request:URLRequest = new URLRequest( "send.php" );
var postData:Object = new Object();
URL_request.method = URLRequestMethod.POST;
function send_mail (e:MouseEvent):void {
postData["name"] = w_name.text;
postData["email"] = w_email.text;
postData["subject"] = w_subject.text;
postData["message"] = w_message.text;
URL_request.data = postData;
var_load.load(URL_request);
}
Уже мне даже интересно, в чём причина
Добавлено через 6 часов 9 минут
Удивительно!
Нашёл самую наибанальнейшую ошибку - переписал php-код в виде:

PHP код:
$send_letter = mail("my@mail", ".$_POST['subject'].", ".$_POST['message'].");
if ($send_letter)
{
echo "success=yes";
}
else
{
echo "success=no";
}
AS теперь выглядит следующим образом:

Код AS3:
w_send.addEventListener(MouseEvent.CLICK, send_mail);
function send_mail (e:MouseEvent):void {
var var_load: URLLoader = new URLLoader();
var URL_request:URLRequest = new URLRequest( "send.php" );
var postData:Object = new Object();
URL_request.method = URLRequestMethod.POST;
postData["name"] = w_name.text;
postData["email"] = w_email.text;
postData["subject"] = w_subject.text;
postData["message"] = w_message.text;
var_load.addEventListener(Event.COMPLETE, receive_response);
URL_request.data = postData;
var_load.load(URL_request);
}
function receive_response(e:Event):void {
var loader:URLLoader = URLLoader(e.target);
var email_status = new URLVariables(loader.data).success;
if( email_status == "yes" ) {
message_status.text = "Ваше сообщение отправлено!";
} else {
message_status.text = "Ошибка отправки!";
}
}
Естественно, на форму добавлено поле динамического текста под именем message_status.
Так вот суть в том, что
один раз письмо замечательно отправилось (в поле было написано "Ваше сообщение отправлено!", но реально пришло пустое письмо без адреса и без ничего.
А вот
все последующие разы, хотя я ничего такого не менял - получаю вот такой мат от Flash:
Цитата:
Error: Error #2101: Строка, переданная в URLVariables.decode(), должна быть строкой запроса закодированного URL-адреса и содержать пары имя/значение.
at Error$/throwError()
at flash.net::URLVariables/decode()
at flash.net::URLVariables()
at _fla::MainTimeline/receive_response()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/onComplete()
|
Что-то непонятно... я хочу чтобы эта форма заработала!
Добавлено через 48 часов 22 минуты
Ну что, больше ни у кого нет идей?