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

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

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

Регистрация: Dec 2009
Сообщений: 16
По умолчанию Проблемы с кириллицей в почтовой форме

Письмо отправляется из флешки (почтовая форма на флеше+PHP).
Когда приходит в The Bat кодировка автоматически не распознавалась. Поставил utf-8 по умолчанию (в почтовой программе) - стал распознаваться текст, который вводит пользователь. Но сам русский текст из PHP файла sendmail.php не распознается (на английском всё работает, а на русском нет). Да и на mail.ru когда смотрю письма, тоже кодировка не распознается бывает. В интернете кучу всего перерыл. По всяком пробывал - не получается ни в какую...


PHP код:
<?php


    $extra_info 
true;
    
    
$myKey 'geheim'

if( !empty(
$_POST) ){
    
    
$yourMail $_POST['youremail'];
    
$sendName $_POST['name'];
    
$sendMail $_POST['mail'];
    
$sendMessage $_POST['message'];
    
$verzenderNaam $sendMail;
    
$verzender 'From: '.$verzenderNaam.' <'.$yourMail.'>'

    
//de headers
    
$mailHeader .= 'Reply-To: '.$sendName.' <'.$sendMail.'>'."\r\n"
    
$mailHeader .= $verzender."\r\n"
    
$mailHeader .= 'X-Mailer: PHP/'phpversion() . "\r\n";
    
$mailHeader .= 'X-Priority: 1'."\r\n"
    
$mailHeader .= 'Priority: Urgent'."\r\n";


    
$sendDay date("d.m.Y");
    
$sendTime date("H:i:s");

    if (
$extra_info == true) { 
        
$ip $_SERVER['REMOTE_ADDR'];
        
$hostmask gethostbyaddr($ip); 
        
$taal = ( $HTTP_SERVER_VARS['HTTP_ACCEPT_LANGUAGE'] != '' ) ? $HTTP_SERVER_VARS['HTTP_ACCEPT_LANGUAGE'] : 'Не определен...';
        
$browser = ( $_SERVER['HTTP_USER_AGENT'] != '' ) ? $HTTP_SERVER_VARS['HTTP_USER_AGENT'] : 'Не определен...';
        
        
$sendXtraInfo '
        IP-адрес: '
.$ip.'('.$hostmask.')
        Язык: '
.$taal.'
        Браузер: '
.$browser;
    }

    
$mailContent '
Дата = '
.$sendDay.' в '.$sendTime.'
____________________________________________________________________________
От: '
.$sendName.'
Email: '
.$sendMail.'
____________________________________________________________________________
Текст сообщения: '
.$sendMessage.'

'
.$sendXtraInfo;

    if (
$_POST['myKey'] == $myKey ) {
        
$versturen mail($yourMail$sendName.' пишет с Вашего сайта www.satim.pp.ru'$mailContent$mailHeader);
    } else {
        
$versturen false
    }

    
$mailResult = ( $versturen ) ? true false;
    echo 
'&mailResult='.$mailResult.'&';


?>

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

Регистрация: Nov 2008
Адрес: Атланта
Сообщений: 1,271
тут посмотрите: http://www.flasher.ru/forum/showthre...=133490&page=2
__________________
Пока я жив, Вы горем обеспечены

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

Регистрация: Dec 2009
Сообщений: 16
Цитата:
Сообщение от zurkis Посмотреть сообщение
я смотрел тут тоже. Ничего у меня не получилось.
может, там и есть ответ, но я не программист и не могу разобраться в том, что там написано.


Последний раз редактировалось nifty5; 01.01.2010 в 21:45.
Старый 07.01.2010, 03:22
AlexMakienko вне форума Посмотреть профиль Отправить личное сообщение для AlexMakienko Найти все сообщения от AlexMakienko
  № 4  
Ответить с цитированием
AlexMakienko
[+3 02.01.10]
 
Аватар для AlexMakienko

Регистрация: Nov 2009
Сообщений: 67
По умолчанию кириллица в PHP

Nyfty5 все должно получиться

1. При создании Flash почт. формы нельзя при работе внутри FLA применять в ---Properties -- Setting-- режим прозрачности -transparent, который используется для прозрачных swf файлов. В этом случае кириллица в swf файле в самой форме пробиваться не будет!! Проверте. Это баг, который Adobe до сих пор не может ликвидировать.
2. При создании формы (внутри FLA) используйте (правым кликом в Lybrary) надежные кириллические шрифты Time New Roman , Arrial и т.д. Проверте в созданной swf форме впрямую (до установки на HTML стр.) что набирается кириллица , а не квадратики. (Англ. у Вас будет набиваться всегда). В этом случае кодировка UTF8 будет обеспечена автоматически.

3.При создании скриптов ( у меня AS2 во Fash 8) в почтовой форме (внутри FLA)
рекомендую добавлять на скрипте отправки --- System.useCodepage = true;
Например у меня в форме на муви-клипе отправки на mail.php стоит:

Код:
on (release)
{
_parent.loadVariables("mail.php", "POST");
System.useCodepage = true; 
}
3. Если в swf кириллица набирается, а при установке на HTML нет - значит причина одна -Не прописывайте swf почтовую форму на HTML использованием Wmode=transparent, что происходит ввиду п.1 при одновременной генерации из под FLA swf и HTML стр.
Проверте это и используйте прописку на Html вида:

Код:
<DIV id=idElement11  style=" POSITION: absolute; TOP:282px; LEFT:10 px;">
 
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" 
codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0"
 width="350" height="350" id="Lun_Post.swf" align="middle">

<param name="allowScriptAccess" value="sameDomain"/>
<param name="movie" value="Lun_Post.swf"/>
<param name="quality" value="high"/>

<embed src="Lun_Post.swf" quality="high" bgcolor="#   " 
width="350" height="350" name="Lun_Post.swf" align="middle" allowScriptAccess="sameDomain" 
type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer">

</object>   </div>
---TOP:282px; LEFT:10 px; -- позволят Вам точно расположить форму на HTML стр.


Что касается PHP файла, то (например, для формы с пятью полями) я вначале (переругавшись с ребятами на своем Хостинге-- rbk.ru ) увидел нормальный прием в кириллице при следующем PHP файле:

Код:
<?php

// iconv_set_encoding('internal_encoding', 'UTF-8'); // Исходная кодировка файлов
iconv_set_encoding('output_encoding' , 'WINDOWS-1251'); // Конечная кодировка
ob_start('ob_iconv_handler'); // буферизация 
// Установка локали
setlocale(LC_ALL, 'ru_RU.CP1251');

header('Content-Type: text/html; charset=CP1251');


$name = $_POST['name'];
$last = $_POST['last'];
$mail = $_POST['mail'];
$address = $_POST['address'];
$message = $_POST['message'];
mail("makalex@aviasystems.com","Сообщение с сайта",
"Имя : $name\nФамилия : $last\nE-mail : $mail\nТелефон : $address\nСообщение : $message");
?>
При этом при первичной наладке почты целесообразно проверять поступление с PHP
непосредственно в ящиках (лучше на Mail.ru или Rambler.ru) временно отказавшись
от почтовых клиентов (у меня The Bat). Клиенты лучше подключать после наладки !! Рекомендую. И не бойтесь требовать от мэнов на Вашем Хостинге чтобы они прокомпиллировали Ваш PHP файл на своем сервере.
У них часто по этой части идут заморочки а Вы ( Я тоже долго) ломаете голову в чем дело.
Например когда заработал верхний PHP они там что-то у себя доналадили
и уменя просто отлично заработал и работает до сих пор простейший вариант


Код:
<?php

header('Content-Type: text/html; charset=utf-8');

$name = $_POST['name'];
$last = $_POST['last'];
$mail = $_POST['mail'];
$address = $_POST['address'];
$message = $_POST['message'];
mail("makalex@aviasystems.com","Сообщение с сайта www.aviasystems.com",
"Имя : $name\nФамилия : $last\nE-mail : $mail\nТелефон : $address\nСообщение : $message");
?>
Измените мой адрес: makalex@aviasystems.com на свой и попробуйте.
И пожалуйста аккуратно и почетче следите за пробелами и казявками при написании или копировании файла PHP.

Еще раз обращаю Ваше внимание, что если Вы используете только Англ. язык общения в почте, то можно использовать режим "прозрачности" по п.1 и получать красивые Формы, не затеняющие Backgroung на Вашей HTML стр.
Если Вам необходимо использовать и Англ. и Кириллицу тогда Вам придется отказаться от "прозрачности".

Правда оставляя во FLA просто белый фон и помещая далее готовую форму на белую HTML стр. (или наоборот вырезая соотв. куски фона в HTML по размеру почт. формы и места ее положения) с подгонкой ее по месту с помощью Дивов можно получать все красиво на HTML и с кириллицей на Почте.
Я постараюсь завтра запостить примерчик в новой теме.
Спасибо за внимание


Последний раз редактировалось AlexMakienko; 07.01.2010 в 03:38.
Создать новую тему Ответ Часовой пояс GMT +4, время: 20:14.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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