X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> Форма с сайте присылает корявые русские слова, Помогите с формой плиз
matador2011
matador2011
Topic Starter сообщение 20.6.2014, 13:23; Ответить: matador2011
Сообщение #1


На сайте есть форма

<form action="mail.php" method="post">
<input type="hidden" name="action" value="send">
<br>
<input type="text" name="fio" required placeholder="Ваше имя" class="text"><br>
<input type="text" name="email" required placeholder="Ваш e-mail" class="text"><br>
<input type="text" name="number" required placeholder="Ваш телефон" class="text"><br>
<input type="submit" class="my_button" value="ЗАКАЗАТЬ">
</form>

в mail.php следующий код:

<?
mail( "мояп почта@mail.ru", "Заказ", "ФИО: $fio\nE-mail: $email\nТелефон:\n$number" );
?>

Все нормально отправляется, но на почте русские буквы отображаются коряво, в виде вопросов... в чем проблема?? подскажите пожалуйста!!!

Сообщение отредактировал matador2011 - 20.6.2014, 13:29
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
n0rv
n0rv
сообщение 20.6.2014, 13:30; Ответить: n0rv
Сообщение #2


Перекодируйте содержимое файла в utf-8, сделать можно в notepad++
Или же пропишите <meta charset="utf-8" />, возможно уже прописана кодировка cp-1251.

Сообщение отредактировал n0rv - 20.6.2014, 13:31


--------------------
Комплексная оптимизация и продвижение сайтов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
matador2011
matador2011
Topic Starter сообщение 20.6.2014, 13:53; Ответить: matador2011
Сообщение #3


n0rv, файл и так в utf-8, а код <meta charset="utf-8" /> не помогает...
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Rual
Rual
сообщение 20.6.2014, 14:12; Ответить: Rual
Сообщение #4


Нужно принудительно перевести фрагмент в Unicode, по типу движка DLE:

Код
$_POST['phone'] = trim(stripslashes( convert_unicode($_POST['phone'], $config['charset'] ) ) );


Сообщение отредактировал Rual - 20.6.2014, 14:13
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
matador2011
matador2011
Topic Starter сообщение 20.6.2014, 14:19; Ответить: matador2011
Сообщение #5


Rual, а как это сделать?? куда это вставлять??
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Rual
Rual
сообщение 20.6.2014, 14:32; Ответить: Rual
Сообщение #6


Для начала в meta-tag html добавить:

<meta charset="utf-8" />

После сохранить сам документ в utf-8, например в блокноте notepad++ это легко сделать (Кодировка->Преобразовать кодировку в UTF-8.

Проверить есть ли поддержка в вашем Mysql этой кодировки, если да то создайте таблицу с параметрами:

DEFAULT CHARSET=utf8;

Подключите ее:

mysql_set_charset('utf8', $con);

Подключить UTF-8 кодировку к php.ini:

default_charset = "utf-8"

Способов много, все зависит от вашего движка, какие именно функции используются. Но в любом случае вот несколько ссылок на эту тему:

Handling Unicode Front To Back In A Web App

default_charset string
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
matador2011
matador2011
Topic Starter сообщение 20.6.2014, 14:46; Ответить: matador2011
Сообщение #7


Rual, нет ybкакого движка, сайт одностраничник, написано только на html+php
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Tollun
Tollun
сообщение 20.6.2014, 15:49; Ответить: Tollun
Сообщение #8


Цитата
$headers = "MIME-Version: 1.0 \r\nContent-Type: text/plain; charset=utf-8";

mail( "мояп почта@mail.ru", "Заказ", "ФИО: $fio\nE-mail: $email\nТелефон:\n$number", $headers);


Сообщение отредактировал Tollun - 20.6.2014, 15:50


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
matador2011
matador2011
Topic Starter сообщение 20.6.2014, 17:40; Ответить: matador2011
Сообщение #9


в таком виде вообщена почту ничего не приходит ...
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
lostprophet
lostprophet
сообщение 20.6.2014, 18:55; Ответить: lostprophet
Сообщение #10


Код
$subject="Заказ с формы";
$to="мыло_на_которое отправлять";
$body="Текст писама";
$email = "From: site.ru <$to>";
mail($to, $subject, $body, "From: Administrator site.ru;\nContent-Type: text/plain; charset=\"utf-8\"");


Как-то так.

Если заголовок будет криво приходить то
Код
$subject = '=?UTF-8?B?'.base64_encode('Заявка с сайта').'?=';


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Сбросить кеш на сайте
7 EnotPF 296 Вчера, 23:25
автор: DUbiev
Открытая тема (нет новых ответов) Посоветуйте систему для приема платежей на сайте
19 SEOMR 1219 13.1.2021, 2:37
автор: MetalMessiah
Горячая тема (нет новых ответов) Что нужно для полупассивного заработка на своем сайте с нуля?
51 atew 3804 6.1.2021, 3:14
автор: kuz999
Открытая тема (нет новых ответов) Непонятные переходы из соцсетей и реклама адсенс на сайте
5 Webranger 370 5.1.2021, 1:26
автор: metvekot
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыYtuber.su - онлайн магазин, купить ютубер (ytuber) баллы в 3 раза дешевле, чем на сайте ytuber.ru!
67 dimon171983 15555 2.1.2021, 16:04
автор: dimon171983


 



RSS Текстовая версия Сейчас: 24.1.2021, 0:10
Дизайн