PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (1): [1]

> Найдено сообщений: 4
slav-spb Отправлено: 10 Июня, 2015 - 14:54:37 • Тема: Форма обратной связи - кракозябры! • Форум: Вопросы новичков

Ответов: 22
Просмотров: 3657
Обрамил.
Страница перестала загружаться.
slav-spb Отправлено: 10 Июня, 2015 - 12:39:35 • Тема: Форма обратной связи - кракозябры! • Форум: Вопросы новичков

Ответов: 22
Просмотров: 3657
Вставил...

Приходят кракозябры, но другие:
0J/QvtGB0YLRg9C/0LjQuyDQvdC+0LLRi9C5INC30LDQutCw0Lcg0L3QsCDQutC90LjQs9GDICfQ
p9C40YHRgtC+0LUg0YLQtdC70L4sINGP0YHQvdGL0Lkg0YPQvCc6CiDQmtC+0LvQuNGH0LXRgdGC
0LLQviDQt9Cw0LrQsNC30LDQvdC90YvR hSDQutC90LjQszogMQogRS1tYWlsINC3 0LDQutCw0LfR
h9C40LrQsDogMQog0JrQvtC90YLQsNC60YLQvdGL0Lkg0L3QvtC80LXRgCDRgtC10LvQtdGE0L7Q
vdCwOiAxCiDQmNC80Y86IDEKIN


Код:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2.    $headers = 'MIME-Version: 1.0' ."\r\n";
  3.    $headers .= 'Content-transfer-encoding: base64'."\r\n";
  4.    $headers .= 'Content-type: text/plain; charset=utf-8';
  5.         $quantity = $_POST['quantity'];
  6.         $email = $_POST['email'];
  7.         $tel = $_POST['tel'];
  8.         $name = $_POST['name'];
  9.    $secondname = $_POST['secondname'];
  10.         $lastname = $_POST['lastname'];
  11.    $postcode = $_POST['postcode'];
  12.         $country = $_POST['country'];
  13.         $region = $_POST['region'];
  14.         $city = $_POST['city'];
  15.         $address = $_POST['address'];
  16.         $message = $_POST['message'];
  17.    $from = 'From: Purif_Book_Form';
  18.    $to = 'slav-spb@yandex.ru';
  19.    $subject = 'Новый заказ на книгу "Чистое тело, ясный ум';
  20.    $human = $_POST['human'];
  21.        
  22.        
  23.    $body = "Поступил новый заказ на книгу 'Чистое тело, ясный ум':\n Количество заказанных книг: $quantity\n E-mail заказчика: $email\n Контактный номер телефона: $tel\n Имя: $name\n Отчество: $secondname\n Фамилия: $lastname\n Индекс: $postcode\n Страна: $country\n Регион: $region\n Город или населенный пункт: $city\n Адрес: $address\n Дополнительная информация: $message\n";
  24.                 if ($_POST['submit']) {
  25.    if ($quantity != '' && $email != '' && $tel != '' && $name != '' && $secondname != '' && $lastname != '' && $postcode != '' && $country != '' && $city != '' && $address != '') {
  26.         if ($human == '12') {                            
  27.             $body = chunk_split(base64_encode($body));                 
  28.                         if (mail ($to, $subject, $body, $from)) {
  29.                 echo '<p class="form-message-ok">Благодарим Вас за заказ! Ваш запрос успешно отправлен в обработку!</p>';
  30.             } else {
  31.                 echo '<p class="form-message-false">Опс! Что-то пошло не так! Пожалуйста, проверьте правильность заполнения всех полей формы и повторите попытку еще раз!</p>';
  32.             }
  33.         } else if ($_POST['submit'] && $human != '12') {
  34.             echo '<p class="form-message-false">Неправильный ответ проверки защиты от спама! Пожалуйста, попробуйте еще раз!</p>';
  35.         }
  36.    } else {
  37.        echo '<p class="form-message-false">Пожалуйста, заполните все обязательные поля формы и отправьте запрос еще раз!</p>';
  38.    }
  39. }
  40. ?>

(Добавление)
Братцы, помогите!! )))
slav-spb Отправлено: 10 Июня, 2015 - 12:23:28 • Тема: Форма обратной связи - кракозябры! • Форум: Вопросы новичков

Ответов: 22
Просмотров: 3657
Tyoma5891
Первые три строчки в начало письма - это я понял.
А куда вставить
$message = chunk_split(base64_encode($message));
?
Я совсем не программер!
slav-spb Отправлено: 10 Июня, 2015 - 12:06:48 • Тема: Форма обратной связи - кракозябры! • Форум: Вопросы новичков

Ответов: 22
Просмотров: 3657
Не стал создавать новую тему, ибо проблема похожая

Сижу пару дней над ней и не понимаю в чем дело.
Сообщения в почту яндекс приходят нормальные, но на телефон через почтовый клиент приходят кракозябры,
причем только тело сообщения, заголовок отображается нормально. Остальные сообщения на русском языке отображаются корректно. так что проблема с телефоном исключена

Есть код:

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.    
  3. $quantity = $_POST['quantity'];
  4. $email = $_POST['email'];
  5. $tel = $_POST['tel'];
  6. $name = $_POST['name'];
  7. $secondname = $_POST['secondname'];
  8. $lastname = $_POST['lastname'];
  9. $postcode = $_POST['postcode'];
  10. $country = $_POST['country'];
  11. $region = $_POST['region'];
  12. $city = $_POST['city'];
  13. $address = $_POST['address'];
  14. $message = $_POST['message'];
  15. $from = 'From: Purif_Book_Form';
  16. $to = 'slav-spb@yandex.ru';
  17. $subject = 'Новый заказ на книгу "Чистое тело, ясный ум';
  18. $human = $_POST['human'];
  19.                        
  20. $body = "Поступил новый заказ на книгу 'Чистое тело, ясный ум':\n Количество заказанных книг: $quantity\n E-mail заказчика: $email\n Контактный номер телефона: $tel\n Имя: $name\n Отчество: $secondname\n Фамилия: $lastname\n Индекс: $postcode\n Страна: $country\n Регион: $region\n Город или населенный пункт: $city\n Адрес: $address\n Дополнительная информация: $message\n";
  21.                 if ($_POST['submit']) {
  22.     if ($quantity != '' && $email != '' && $tel != '' && $name != '' && $secondname != '' && $lastname != '' && $postcode != '' && $country != '' && $city != '' && $address != '') {
  23.         if ($human == '12') {                            
  24.            
  25.                         if (mail ($to, $subject, $body, $from)) {
  26.                 echo '<p class="form-message-ok">Благодарим Вас за заказ! Ваш запрос успешно отправлен в обработку!</p>';
  27.             } else {
  28.                 echo '<p class="form-message-false">Опс! Что-то пошло не так! Пожалуйста, проверьте правильность заполнения всех полей формы и повторите попытку еще раз!</p>';
  29.             }
  30.         } else if ($_POST['submit'] && $human != '12') {
  31.             echo '<p class="form-message-false">Неправильный ответ проверки защиты от спама! Пожалуйста, попробуйте еще раз!</p>';
  32.         }
  33.     } else {
  34.         echo '<p class="form-message-false">Пожалуйста, заполните все обязательные поля формы и отправьте запрос еще раз!</p>';
  35.     }
  36. }
  37. ?>


Сохранил файл в кодировке utf-8 без BOM

Прописал в .htaccess
AddDefaultCharset UTF-8
php_value default_charset utf-8

добавил строчку в самом начале php кода
$headers .= "Content-Type: text/plain; charset=utf-8\n";

пробовал вместо этой строчки добавить
header('Content-Type: text/html; charset=utf-8');

результат тот же.

Что я делаю не так?

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB