Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 14.11.2011, 21:18
GrafMine вне форума Посмотреть профиль Отправить личное сообщение для GrafMine Найти все сообщения от GrafMine
  № 1  
Ответить с цитированием
GrafMine
 
Аватар для GrafMine

Регистрация: Jan 2011
Сообщений: 247
По умолчанию email со flash'a с ипользованием php

Не нашел в интернете отправку на мыло письма через AS3
Вот в принципе что мне надо но код на AS2:
Код AS3:
			_root.createEmptyMovieClip("v", 120);
			v.name = 'Name';
			v.mail = 'vasa@mail.ru';
			v.message = 'eto vasa';
			// Отправляем данный php - скрипту
			v.loadVariables("Cont.php", "POST");
PHP код:
<?php
header
('Content-Type: text/html; charset=utf-8');
 
$name $_POST['name'];
 
$mail $_POST['mail'];
 
$message $_POST['message'];
 
mail("petya@mail.ru","Сообщение с сайта Aviasystems.com",
      
"От кого : $name\nE-mail : $mail\nСообщение : $message");
?>
Кто может помочь перевести код на AS3 ?

Старый 14.11.2011, 21:19
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 2  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
URLLoader + URLVariables
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 14.11.2011, 21:31
GrafMine вне форума Посмотреть профиль Отправить личное сообщение для GrafMine Найти все сообщения от GrafMine
  № 3  
Ответить с цитированием
GrafMine
 
Аватар для GrafMine

Регистрация: Jan 2011
Сообщений: 247
Цитата:
Сообщение от GBee Посмотреть сообщение
URLLoader + URLVariables
Код AS3:
var v: MovieClip = new MovieClip();
v.name = 'Name';
v.mail = 'vasa@mail.ru';
v.message = 'eto vasa';
var loadVariables:URLVariables = new URLVariables();
v.loadVariables("Cont.php", "POST");
тоже не работает, не совсем понял куда пристроить URLLoader

Старый 14.11.2011, 21:41
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 4  
Ответить с цитированием
goodguy
Banned
[+1 05.11.11]
[+1 09.08.11]

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
Цитата:
тоже не работает, не совсем понял куда пристроить URLLoader
)
GrafMine, загляните уже в справку наконец. Там все это есть.
Зачем кто-то будет копировать сюда текст из официальной документации,

Старый 15.11.2011, 01:23
GrafMine вне форума Посмотреть профиль Отправить личное сообщение для GrafMine Найти все сообщения от GrafMine
  № 5  
Ответить с цитированием
GrafMine
 
Аватар для GrafMine

Регистрация: Jan 2011
Сообщений: 247
Цитата:
Сообщение от goodguy Посмотреть сообщение
)
GrafMine, загляните уже в справку наконец. Там все это есть.
Зачем кто-то будет копировать сюда текст из официальной документации,
http://help.adobe.com/ru_RU/FlashPla...URLLoader.html

Нечего для себя не нашел
P.S. ткните пальцем

Старый 15.11.2011, 01:29
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 6  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
http://help.adobe.com/ru_RU/FlashPla...Variables.html
А тут?
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 15.11.2011, 01:58
GrafMine вне форума Посмотреть профиль Отправить личное сообщение для GrafMine Найти все сообщения от GrafMine
  № 7  
Ответить с цитированием
GrafMine
 
Аватар для GrafMine

Регистрация: Jan 2011
Сообщений: 247
Цитата:
Сообщение от GBee Посмотреть сообщение
а тут я нашел, вот что под себя написал:
Код AS3:
var url:String = "Cont.php";
var request:URLRequest = new URLRequest(url);
var v:URLVariables = new URLVariables();
v.name = 'Name';
v.mail = 'мыло@mail.ru';
v.message = 'тыц';
request.data = v;
navigateToURL(request);
Но чувствую под такой код уже пхп нужен другой, в пхп я еще больше дремлю в лесах

Старый 15.11.2011, 02:03
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 8  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
О ну вот!
Осталось добавить method="POST"; и может пхп заработает.
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 15.11.2011, 02:26
GrafMine вне форума Посмотреть профиль Отправить личное сообщение для GrafMine Найти все сообщения от GrafMine
  № 9  
Ответить с цитированием
GrafMine
 
Аватар для GrafMine

Регистрация: Jan 2011
Сообщений: 247
Цитата:
Сообщение от GBee Посмотреть сообщение
О ну вот!
Осталось добавить method="POST"; и может пхп заработает.
Попробовал три варианта, не один не заработал :
Код AS3:
1:
v.method = "POST";
 
№2:
request.method = "POST";
 
№3:
navigateToURL(request,"POST");
что-то не так делаю ?

Старый 15.11.2011, 06:36
fish_r вне форума Посмотреть профиль Отправить личное сообщение для fish_r Посетить домашнюю страницу fish_r Найти все сообщения от fish_r
  № 10  
Ответить с цитированием
fish_r
 
Аватар для fish_r

блогер
Регистрация: Jan 2011
Сообщений: 1,162
Записей в блоге: 4
Вообще то правильно так:

Код AS3:
 
        var request:URLRequest = new URLRequest("example.txt");
 
        request.method = URLRequestMethod.POST;
Добавлено через 9 минут
И зачем здесь navigateToURL()? Может уместнее будет sendToURL() ? Или URLLoader.

Добавлено через 42 минуты
На стороне PHP можно данные можно извлекать из массива $REQUEST, формат типа $REQUEST["somevarname"]...

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

PHP код:
<?php
  
/*
  *  Класс для посылки почты через сокет-соединение
  * без использвоания функции mail()
  * 
  *     в параметрах передается только
  * 0. Имя службы.
  * 1. Кому.
  * 2. Тема.
  * 3. Тело сообщения.
  * 
  * 
  * 
  * 
  */
  
  
class lib_email_outPstSmtp{
      
//результат работы класса
      
public $msg="";
      
//"умолчальный путь";
      
private $path;
      
// текущее значение почтовых данных
      //SMTP - сервер
      
private $mySrv="localhost";
      
      
//prefix - используется при создании ID
      //заголовков и означает расширении текущей MX записи
      
private $myPrefMX="...";
      
      
//мой почт. аккуант
      
private $myBox="...";
      
      
//my pass
      
private $myPass='...';
      
      public function 
MngSendrSMTP($servis,$to,$sabject,$body){
          
$this->msg="Сообщение не отправлено. Неизвестная ошибка.";
          
$this->path=getenv('DOCUMENT_ROOT')."/lib/e-mail/";
          
          
//получаем сформированные служебные заголовки письма
          
$header=$this->CreateHeder($servis,$to,$sabject);
          
          
//отправляем почту
          
if(!$this->SendPost($to,$header,$body))return $this->msg;
          
          return 
$this->msg="Отправлено успешно.";
          
          
      
      }
      
      
      
//функция работы с открытым соединением
      
private function Get_Data($smtp_conn){
          
$data="";
          while(
$str fgets($smtp_conn))
          {
            
$data .= $str;
            if(
substr($str,3,1) == " ") { break; }
          }
          return 
$data;
     }
     
     private function 
CreateHeder($servis,$to,$sabject){
         
$srv="=?indows-1251?B?".base64_encode($servis)."?=";
         
$sub="=?windows-1251?B?".base64_encode($sabject)."?=";
         
$header="Date: ".date("D, j M Y G:i:s")." +0700\r\n";
         
$header.="From: ".$srv." ";
         
$header.=" <".$this->myBox.">\r\n";
         
$header.="X-Mailer: The Bat! (v3.99.3) Professional\r\n";
         
$header.="Reply-To: ".$srv."<".$this->myBox.">\r\n";
         
$header.="X-Priority: 3 (Normal)\r\n";
         
$header.="Message-ID: <".mt_rand(100000000,999999999).".".date("YmjHis")."@".$this->myPrefMX.">\r\n";
         
$header.="To: <".$to.">\r\n";
         
$header.="Subject:".$sub." \r\n";
         
$header.="MIME-Version: 1.0\r\n";
         
$header.="Content-Type: text/html; charset=windows-1251\r\n";
         
$header.="Content-Transfer-Encoding: 8bit\r\n";
         return 
$header;
     }
     
     
     
//открываем соединение, отправляем почту, закрываем
     //возвращаем результат
     
private function SendPost($to,$header,$body){
     
         
//открываем соединение передаем его в 
         //дескриптор
         
@$smtp_conn fsockopen($this->mySrv25,$errno$errstr10);
         if(!
$smtp_conn){
              
$this->msg="Не удалось установить соединение с почт.сервером";
              return;
         }
         
         
$commands=array
         (
             
"EHLO ".$this->myPrefMX."\r\n",
             
"AUTH LOGIN\r\n",
             
base64_encode("info@".$this->myPrefMX)."\r\n",
             
base64_encode($this->myPass)."\r\n",
             
"MAIL FROM:<".$this->myBox.">\r\n",
             
"RCPT TO:<".$to.">\r\n",
             
"DATA\r\n",
             
$header."\r\n".$body."\r\n.\r\n",
             
"QUIT\r\n"
         
);
         
         foreach(
$commands as $request){
             
fputs($smtp_conn,$request);
             
$data=$this->Get_Data($smtp_conn);
             if(
substr($data,0,3)>=400){
               
$this->msg="Команда - $request, код $data. Требуется проверка.";  
               return;
             } 
             
         }
         
         return 
1;

     }
        
     
/*   
      public function __toString(){
          return $this->msg;
      
      }
     */ 
      
  
}
   
?>
Отправляет полностью копируя заголовки программы The Bat!, версии 3.99.3 или вроде того, как бы эмулирует её работу, поэтому в спам не попадет )

Эх, аж ностальгия по пыхе появилась )). Захотелось написать что-нибудь.... Поплакал - прошло

Добавлено через 56 минут
ЗЫ. Это я давно писал, не ржите!

Создать новую тему Ответ Часовой пояс GMT +4, время: 01:11.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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