Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Серверные технологии и Flash (http://www.flasher.ru/forum/forumdisplay.php?f=62)
-   -   e-mail и хостинг (http://www.flasher.ru/forum/showthread.php?t=129493)

sy555 02.09.2009 20:23

e-mail и хостинг
 
Добрый день..
Проблема с отправление e-mail через flash->php(mail)..

код во флеш:
Код AS1/AS2:

System.useCodepage = true;
 
 
info.text='Заполните все поля, наберите текст сообщения и нажмите кнопку "Отправить"';
 
var s_and_1_obj:LoadVars=new LoadVars(); // Отправитель
var rec_obj:LoadVars=new LoadVars(); // Получатель
 
send.useHandCursor = false;
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://www.****.ru/mail.php", rec_obj, "POST");
info.text="Письмо отправляется...";
};
 
 
 
rec_obj.onData=function(text:String):Void {
info.text=""+text;
};



PHP код:

<?php

$receiver
=$_POST['receiver_mail'];
$subject=$_POST['subject'];
$text=$_POST['letter_text'];
$from=$_POST['sender_name'];

$sendTo "****@yandex.ru";


        
$unq        strtoupper(uniqid(time()));
        
$subj        $_POST['subject'];
        
$head        "From: $from\n";
        
$head        .= "To: $sendTo\n";
        
$head     .= "Subject: $subject\n";
        
$head     .= "Reply-To: $from\n";
        
$head     .= "Mime-Version: 1.0\n";
        
$head     .= "Content-Type:multipart/mixed;";
        
$head     .= "boundary=\"----------".$unq."\"\n\n";
        
$body      "------------".$unq."\nContent-Type:text/html;charset=\"windows-1251\"\n";
        
$body     .= "Content-Transfer-Encoding: 8bit\n\n$text\n\n";
        
$body     .= "------------".$unq."\n";

    
$success mail($to$subj$body$head);



if(
$success) {
echo 
'Письмо успешно отправлено';
} else {
echo 
'Письмо отправить не удалось. Проверьте, все ли поля заполнены.';
}

?>

При открытие флешки через редактор(FlashProfessional 8) письма отправляются нормально..

При открытие через плеер или браузер(html ) без редактора ,письма не отравляются..
Залил сайт на narod.ru , (mail.php лежит на платнном хостинге) .. то же не отправляет..

В чем может быть ошибка?:wacko:

Добавлено через 4 минуты
ответ при неудачном отправление "undefined", т.е он не может найти php файл. но он есть там, и он работает..

Dr_Jekyll 02.09.2009 21:24

На народе не работают скрипты, найдите 30 рублей в месяц на нормальный хостинг.
И локально они тоже не отправятся, нужно веб-сервер поднимать

Добавлено через 2 минуты
сорри, не увидел, что скрипт лежит на другом хосте. Почитайте про политику безопасности и crossdomain.xml. Из редактора отправляются, потому что он этой политикой "пренебрегает" =) А вот в браузере не будет работать

mooncar 02.09.2009 22:02

Попробуйте разместите скрипт и флешку на одном и том же хостинге.

sy555 02.09.2009 22:58

Да так работает, спасибо.
Но интересно ,как с crossdomain.xml работать.?

crossdomain.xml:
Код:

<?xml version="1.0"?>
<!-- http://www.****.narod.ru/crossdomain.xml -->
<cross-domain-policy>
  <allow-access-from domain="www.****.ru" />  //это планый домен,там лежит mail.php
  <allow-access-from domain="*.foo.com" />
  <allow-access-from domain="105.216.0.40" />
</cross-domain-policy>

так же положил этот файлик на платный домен, но с народа не отправляется письмо, что я делаю не так?

Dr_Jekyll 02.09.2009 23:15

Код AS1/AS2:

<cross-domain-policy>
  <allow-access-from domain="site.narod.ru" />
  <allow-access-from domain="www.site.narod.ru" />
</cross-domain-policy>

Этот файл ложить на сайт со скриптом. Вместо site.narod.ru пропишите адрес вашего сайта

sy555 02.09.2009 23:27

Отлично,все работает ,спасибо большое..

Код:

<cross-domain-policy>
  <allow-access-from domain="site.narod.ru" />
  <allow-access-from domain="www.site.narod.ru" />
  <allow-access-from domain="213.180.199.**" />
</cross-domain-policy>

это положил на платный хостинг..

+ дописал во флеш скрипте (хотя в данном случае работает и без этого)

Код AS1/AS2:

System.security.loadPolicyFile("http://platniyhosting.ru/crossdomain.xml");

Тема закрыта, еще раз спасибо.


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

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