Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Отправка текста на почту (http://www.flasher.ru/forum/showthread.php?t=194494)

Mompochi 15.02.2013 16:20

Отправка текста на почту
 
Добрый день (или что там у Вас)! Может ли кто подсказать, как же все-таки осуществляется отправка введенного текста на определенную почту при нажатии на кнопку? А то совсем уж непонятно (Flash Builder). Можете скинуть пример, если не жалко)

zuxul 15.02.2013 18:52

А что Вам конкретно непонятно?

caseyryan 15.02.2013 19:00

Из приложения работающего во флеш плеере, нельзя отправить почту. Для этого нужен сервер.

Chum 15.02.2013 19:24

Из swf-файла можно передать каки-либо данные в php-скрипт из которого можно уже отсылать сообщения вызвав php-функцию mail(). Если хотите посмотреть как это в принципе можно реализовать, плиз:
http://kersha.ru/index.php?option=co...la25&Itemid=74
Там есть исходники на AS3.

wvxvw 15.02.2013 21:59

На самом деле... отправка почты - тайна покрытая мраком за семью печатями, и все совем не так просто (как кажется в ПХП). Электронная почта - это в неимоверной степени несуразный и очень плохо работающий механизм, который очень тяжело настроить и контроллировать. ПХП не сам отправляет почту, а, скорее всего, пользуется программой sendmail (которая будет сама побольше ПХП интерпретатора). Далее, замечательная программа sendmail - это хитросплетение из большого количества меньших несуразных програм, большая часть которых заслуживает место в музее развития компьютерной техники. Но в общем, смысл заключается в том, чтобы посредничать между почтовыми серверами. Посредничество заключается в том, чтобы понять из заголовков сообщения на какой из серверов (и сколько копий) отправлять, как обработать содержание, и еще менее интересные детали.
Почтовых серверов есть несколько типов, использующих разные протоколы, такие, как например, POP, или IMAP. Эти сервера в чем-то похожи на HTTP сервера, с той разницей, что они еще более древние, и еще более запутанные. НО, что очень важно в нашем случае - они вполне себе доступны флешевому клиенту! Ну, не всегда, но часто. Некоторые почтовые сервера, примерно так же, как и HTTP сервера могут использовать SSL шифрование для траффика (и тогда вам прийдется самому разбираться с шифрованием). Кроме того, сервера эти, как правило, работают на портах, куда флешу просто так не приконнектится. Но, и тем не менее, технически проблема отсылки почты из флеша решаема. Тому даже есть примеры: http://www.bytearray.org/?p=27 он даже вроде аттачменты может посылать.

Mompochi 16.02.2013 12:04

Ну, как бы нужно, чтобы введенный текст после нажатия на кнопку отправлялся на почту, или куда нибудь) ну чтобы хоть куда то отправлялся! Мне бы код реализации этого волшебства узнать) А GetUrl не поможет в данном случае? Или еще какая магия?

Chum 16.02.2013 12:41

Во флешке есть кнопка knop и текстовые поля email, temamail, pismotext, данные которых необходимо передать в PHP-файл doc.php:
Код AS3:

/* Функция отправки данных e-mail в php-скрипт */
knop.addEventListener(MouseEvent.MOUSE_UP, funcEmail);
function funcEmail(sob:Event):void{
    var request:URLRequest = new URLRequest("doc.php");
    var variables:URLVariables = new URLVariables();
    variables.adresemail  = email.text;
    variables.temaemail  = tematext.text;
    variables.pismoemail  = pismotext.text;
    request.data = variables;
    request.method = URLRequestMethod.POST;
    navigateToURL(request, "_self");
}

а уже в PHP скрипте отлавливайте $_POST['email'], $_POST['temaemail'], $_POST['pismotext'] и средствами PHP, функция mail() отсылайте сообщение.

Добавлено через 2 минуты
Поправлюсь в PHP надо отлавливать $_POST['adresemail'] а не $_POST['email']

Добавлено через 4 минуты
и не $_POST['pismotext'] а $_POST['pismoemail'], извините

Добавлено через 9 минут
Блин писал второпях и опять нашёл ошибку - текстовое поле tematext а не temamail

Добавлено через 16 минут
В общем окончательно:
Во флешке есть кнопка knop и текстовые поля email, tematext, pismotext, данные которых необходимо передать в PHP-файл doc.php:

Далее код - в коде ошибок нет

а уже в PHP скрипте отлавливайте $_POST['adresemail'], $_POST['temaemail'], $_POST['pismoemail'] и средствами PHP, функция mail() отсылайте сообщение.

Mompochi 16.02.2013 13:22

Уэ( Совсем не понятно, я в пхп чайник т_т
Все равно, благодарю за советы

Добавлено через 52 секунды
Надеюсь это вы про Флеш Билдер говорите? Оо

Chum 16.02.2013 19:06

Я говорю это о ActionScript 3.
Создате файл doc.php, вставьте в него SWF-файл (google.com). В этом swf-файле должны быть три текстовых поля: email, tematext, pismotext сообщения из них будут передаваться на адрес электронной почты который указывается в поле email в полях tematext и pismotext указываются тема письма и текст письма, кроме того в этом swf должна быть кнопка knop кликнув по которой отправляется сообщение. Далее скопируйте код AS3 и вставьте его в файл. Во Flash это fla файл в Билдере не знаю.
В самом начале файла doc.php разместите следующий код:
PHP код:

<?php
    
if(isset($_POST['adresemail'])){
        
mail($_POST['adresemail'], $_POST['temaemail'], $_POST['pismoemail']);
    }
?>

Выложите файл на сервер, например localhost, в браузере откройте его и должно работать, по идее.

iflamberg 16.02.2013 19:07

В локалхосте работать не будет, если sendmail не настроен.

Chum 16.02.2013 19:16

Тогда только один выход - ищите бесплатный хостинг с PHP - ucoz.ru например и пробуйте оттуда.

Mompochi 17.02.2013 13:12

Сама бы низашто не додумалась Оо спасибо, за советы.

Добавлено через 1 минуту
Мне б без сервера, с настольного приложения) чтоб с любого компа через данное приложение отправлять

alatar 17.02.2013 14:34

Можете отправлять через почтовый клиент установленный у пользователя.
Код AS3:

var request:URLRequest = new URLRequest("mailto:somemail?someoptions");
navigateToUrl(request, "_self")

Опции mailto можно посмотреть, например, на вики.

wvxvw 18.02.2013 02:29

Какое-то странное обсуждение, право слово. Я же там раньше дал ссылку на библиотеку, которая сама же и является почтовым клиентом, и послать из нее почту - ну как бы вроде ж работает... чем плохо-то?

Mompochi 28.04.2013 21:27

Уф, как бы я ни старалась, ничего не выходит -__-
А нельзя по простому?
Без пхп, серверов и т.п.? Чтоб сразу раз! И на почту текст)
Adobe Flash Buileder 4.6

Добавлено через 5 минут
Ну или если с ПХП, то что надо для этого?
Локалхост или чой-то там? Маскимально упростить как будет, помогите пжалста, горю Т__Т

-De- 29.04.2013 10:55

Эти библиотеки работают через сокеты. Потому требуют отдачу полиси. Т.е. на смтп сервере, на который вы будете коннектиться, должен быть запущен полиси сервер (или допилен сам смтп сервер).
Т.е. это или какие-то почтовые сервера предоставляют, или эти все либы не работают.


Часовой пояс GMT +4, время: 09:06.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.