PDA

Просмотр полной версии : Из флеш, на мыло. Как?


джонатан
18.11.2007, 02:18
Люди добрые! Выручайте! Мне срочно нужно сделать во флеш сайте форму заказа.

Я так понимаю, что мне нужно её для начала нарисовать, вставить формочки инпут текста, и на него повесить код, что-бы тектс, который введет заказчик, отправился на мыло. Только я пока познаю ActionScript и соответсвенно этого кода не знаю. :wacko: Помогите мне пожалуйста! Поделитесь кодом (и пометьте к чему его крепить).

Заранее благодарен, всем откликнувшимся, и потратившим на меня немного своего драгоценного времени! :victory:

etc
18.11.2007, 02:34
А какова причина срочности и почему ваше «срочно» сочетается с «нихрена не знаю флеш»?
Такой вариант возможен лишь в том случае, когда вы взялись за проект, который ни шиша потянуть не можете и сорвали все сроки. В этом случае поможет раздел вакансий на данном форуме.
Других вариантов возникновения подобной ситуации я себе представить не могу.

джонатан
18.11.2007, 02:58
Тут Вы не правы! У меня есть другой вариант! Я могу просто написать, что бы мылили на такой-то мэйл. А узнать как это делается, я хочу для саморазвития.

Прошу Вас, заметить, что я не писал, что я "нихрена не знаю флеш" я просто очень плохо знаю ActionScript. Можно даже сказать "я нихрена не знаю Экшн Скрипт" но хочу его узнать!

На том уровне, как меня просят, проэкт я тяну на все 100%, просто я хочу развиваться. А по книге ActionScript для Flash MX я изучить данный язык не могу, т.к. там написано совсем не для людей имеющих хотябы такое представление об ActionScript какое имею я.
Я вообще коды пишу с помощью кнопочки "Add a new item to the script"
Только код прелоадера пишу самостоятельно. Благодаря добрым людям, которые помогли мне в подобно данному топике, я зазубрил этот код. А теперь пришло время выучить код на отправку e-mail. И всего-то.

И со "СРОЧНО!" я слегка погорячился, мне не так уж и к спеху пока. Если вам так не понравилось, слово срочно, то извените меня пожалуйста за доставленные неудобства в Вашу сторону. Я не хотел. Честно.

loki999
18.11.2007, 02:59
надо создать файл mail.php и в нём написать:

<?php
$name = $_POST['Sname'];
$mail = $_POST['Semail'];
$subject = $_POST['Ssubject'];
$message = $_POST['Smessage'];
mail("твоё-мыло@mail.ru","$subject","ИМЯ : $name\nE-MAIL : $mail\nСООБЩЕНИЕ : $message");
?>

вместо "твоё-мыло@mail.ru" пишешь и-маил на который должно приходить письмо.

а во flash`е, создаёшь 4 Input text и один Dynamic text(Sname, Semail Ssubject, Smessage, и Sresult ) (Имя, Мыло, Тема Сообщения, Сообщение), 2 кнопки (reset_btn, send_btn), пишешь в слое следующее:



//показывает пользователю, что нужно сделать
Sresult.text = "*заполните все необходимые поля";

//ограничение ввода символов в поле Semail, что бы херню всякую не писали
Semail.restrict = "a-z0-9_@.\\-";

//действия кнопки, предназначеной для отчистки полей ввода, если человеку непонравилось, что он написал
reset_btn.onPress = function() {
Sname.text = "";
Semail.text = "";
Ssubject.text = "";
Smessage.text = "";
send_btn.enabled = false;
reset_btn.enabled = false;
Sresult.text = "*заполните все необходимые поля";
}

//действия кнопки, предназначеной для отправки письма. идёт обращение к файлу mail.php
send_mail_function = function (Name, Email, Subject, Message) {
createEmptyMovieClip("SMF", 120);
SMF.Sname = Name;
SMF.Semail = Email;
SMF.Ssubject = Subject;
SMF.Smessage = Message;
SMF.loadVariables("mail.php", "POST");
trace (SMF.Sname);
trace (SMF.Semail);
trace (SMF.Ssubject);
trace (SMF.Smessage);
}

//функция кнопки отправки письма
send_btn.onPress = function() {
send_mail_function (Sname.text, Semail.text, Ssubject.text, Smessage.text);
Sresult.text = "ваше сообщение отправлено. спасибо.";
send_btn.enabled = false;
}

//при каких обстоятельствах давать доступ к кнопке отправки письма, а при каких - нет, чтобы зря не нажимали
send_enabled = new Object();
send_enabled.onKeyUp = function() {
if (Sname.text != "" && Semail.text != "" && Smessage.text != "") {
send_btn.enabled = true;
} else {
send_btn.enabled = false;
}
}
Key.addListener(send_enabled);

//тоже самое для кнопки отчистки
reset_enabled = new Object();
reset_enabled.onKeyUp = function() {
if (Sname.text != "" || Semail.text != "" || Ssubject.text != "" || Smessage.text != "") {
reset_btn.enabled = true;
} else {
reset_btn.enabled = false;
}
}
Key.addListener(reset_enabled);

кодировка, чтобы русский текст работал
System.useCodepage = true;


единственная, просьба, кто знает, подкорректируйте код:
нужно сделать проверку существования е-mail адреса (если это возможно), и ещё хотелось бы, чтобы при нажатии кнопки отправки сообщения, вначале происходила проверка, отправляется ли мыло или нет, а после (обратный ответ из php файла, если не ошибаюсь) действительное уведомление, что мыло отправлено (или нет).

было бы ещё не плохо, что бы нельзя было писать ПРОБЕЛЫ в и-маиле и, чтобы обязательно был знак @ в середине набранного и маила (с соответствующим уведомлением).

кто поможет модернизировать код?

джонатан
18.11.2007, 03:10
loki999
От всей души благодарю вас! Есть всетаки добрые люди на земле!

udaaff
18.11.2007, 03:16
http://www.flashblog.ru/?p=196