![]() |
|
||||||||||
|
|||||
|
Регистрация: Mar 2011
Адрес: Забайкальский край
Сообщений: 10
|
Здравствуйте!
У меня возникла следующая проблема - не получается совместить php и Macromedia Flash. Работаю по книге Дмитрия Гурского, но может в книжке опечатки или это я такой не мовсем умный, но у меня ничего не получается. Предлагаю вашему вниманию скрипты на Flash и php. Macromedia Flash MX Professional 2004 System.useCodepage=true; var s_and_1_obj:LoadVars=new LoadVars(); // Отправитель var rec_obj:LoadVars=new LoadVars(); // Получатель send.onPress=function():Void { s_and_1_obj.sender_name=sender_name.text; s_and_1_obj.sender_mail=sender_mail.text; s_and_1_obj.receiver_mail=receiver_mail.text; s_and_1_obj.subject=subject.text; s_and_1_obj.letter_text=letter_text.text; s_and_1_obj.sendAndLoad("http://localhost/test", rec_obj, "POST"}; info.text="Письмо отправляется..."; }; rec_obj.onData=function(text:String):Void { info.text="Сервер сообщает:"+text; };
|
|
|||||
|
блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
|
Что именно не работает?
Попробуйте вместо http://localhost/test поставить точный путь до скрипта, например http://localhost/test/script.php. Для пхп-скрипта, который будет отвечать на запросы из флэшки хтмл-тэги не нужны.
__________________
hauts.ru |
|
|||||
|
Регистрация: Mar 2011
Адрес: Забайкальский край
Сообщений: 10
|
А это может произойти из-зи того, что у меня Macromedia Flash, а не как у всех от компании Adobe?
Hauts, нет, ничего не работает. Ткнул, как вы и сказали в файл и ничего... |
|
|||||
|
блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
|
Флэш, по-хорошему, лучше поновее поставить, конечно.
Давайте так: 1. Создаете папку, в ней текстовый файл script.php, и в нем пишите: Сохраняете в utf-8 обязательно. 2. Создаете новый флэш-файл в той же папке. И в первом кадре основной временной шкалы пишите код: var lv:LoadVars = new LoadVars(); lv.onLoad = function() { trace(this.response); }; lv.sendAndLoad("script.php",lv); Если это работает, потом делаете следующее: переносите файл script.php туда же, откуда вы до этого пытались грузить (на localhost/test) и во флэше прописывайте новый его адрес. Запускаете. Если не сработает — значит у вас ошибка с путями или денвер не запущен. Если сработает, то можно продолжить дальше и в пхп принимать переменные и отдавать необходимый ответ, почти так же, как вы пытались делать, только убрав html-тэги: <?php
$receiver=$_POST['receiver_mail'];
$subject=$_POST['subject'];
$text=$_POST['letter_text'];
$from='From:'.$_POST['sender_name'].'<'.$_POST['sender_mail'].'>';
$success=mail($receiver, $subject, $text, $from);
if($success) {
echo 'result=Письмо успешно отправлено';
} else {
echo 'result=Письмо отправить не удалось. Проверьте, все ли поля заполнены.';
}
?>
var lv:LoadVars = new LoadVars(); lv.sender_name = sender_name.text; lv.sender_mail = sender_mail.text; lv.receiver_mail = receiver_mail.text; lv.subject = subject.text; lv.letter_text = letter_text.text; lv.onLoad = function() { trace(this.result); }; lv.sendAndLoad("http://localhost/test/script.php",lv); Ну и System.useCodepage=true; никогда не используйте. Если так же и в книге написано, то выкиньте ее. ![]()
__________________
hauts.ru Последний раз редактировалось Hauts; 11.03.2011 в 11:17. |
|
|||||
|
Регистрация: Mar 2011
Адрес: Забайкальский край
Сообщений: 10
|
Hauts, первый тест, который вы мне предоставили, ничего не выдает. Окошко Output как было пустым, таким и осталось...
А вы сможете оказать мне помощь по аське? Просто я только начинаю изучать флэш и хотелось бы, чтобы был кто-то к кому можно было обратиться за помощью. |
![]() |
![]() |
Часовой пояс GMT +4, время: 16:43. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|