Проблема с кодировкой

123 4
webiumpro
На сайте с 20.03.2017
Offline
39
#11

Sitealert, а как это решит проблему с кодировкой? Вы заменили только способ сбора данных из формы через $("#contactForm").serialize(), но функция сериализации формы делает то же самое, что и так сделано в скрипте вручную.

Копирование лендингов. Разработка на фреймворке сервисов. Создание сайтов (/ru/forum/994418)
S
На сайте с 30.09.2016
Offline
469
#12
webiumpro:
Sitealert, а как это решит проблему с кодировкой? Вы заменили только способ сбора данных из формы через $("#contactForm").serialize(), но функция сериализации формы делает то же самое, что и так сделано в скрипте вручную.

URL-кодирование.

Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
Игорь К
На сайте с 07.02.2005
Offline
151
#13
Sitealert:
Неправильно формируется AJAX-запрос, надо править файл /assets/js/contact-form-script.js.

Вот такой сейчас код этого файла /assets/js/contact-form-script.js


/*==============================================================*/
// Elkevent Contact Form JS
/*==============================================================*/
(function ($) {
"use strict"; // Start of use strict
$("#contactForm").validator().on("submit", function (event) {
if (event.isDefaultPrevented()) {
// handle the invalid form...
formError();
submitMSG(false, "Did you fill in the form properly?");
} else {
// everything looks good!
event.preventDefault();
submitForm();
}
});


function submitForm(){
// Initiate Variables With Form Content
var name = $("#name").val();
var email = $("#email").val();
var msg_subject = $("#msg_subject").val();
var phone_number = $("#phone_number").val();
var message = $("#message").val();



$.ajax({
type: "POST",
url: "assets/php/form-process.php",
data: "name=" + name + "&email=" + email + "&msg_subject=" + msg_subject + "&phone_number=" + phone_number + "&message=" + message,
success : function(text){
if (text == "success"){
formSuccess();
} else {
formError();
submitMSG(false,text);
}
}
});
}

function formSuccess(){
$("#contactForm")[0].reset();
submitMSG(true, "Сообщение отправлено!")
}

function formError(){
$("#contactForm").removeClass().addClass('shake animated').one('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function(){
$(this).removeClass();
});
}

function submitMSG(valid, msg){
if(valid){
var msgClasses = "h4 text-left tada animated text-success";
} else {
var msgClasses = "h4 text-left text-danger";
}
$("#msgSubmit").removeClass().addClass(msgClasses).text(msg);
}
}(jQuery)); // End of use strict
Грамотная регистрация торговой марки - ЗДЕСЬ (http://tm.ua/)
S
На сайте с 30.09.2016
Offline
469
#14
Игорь К:
Вот такой сейчас код этого файла

Я уже посмотрел этот код, поэтому и предложил заменить функцию.

Игорь К
На сайте с 07.02.2005
Offline
151
#15
webiumpro:
Игорь К, У вас часть этого кода уже есть. Найдите строчку под комментарием //send email и замените ее на эти две строчки.

Нашел

// send email

$success = mail($EmailTo, $Subject, $Body);

Заменил на

// send email

$headers = "Content-Type: text/html; charset=UTF-8";
$success = mail($EmailTo, $Subject, $Body, $headers);

Сохранил. Обновил страницу сайта с формой. Проверил.

С Телом письма - Получилось! Браво, webiumpro! Само письмо - ниже:

-----------

ФИО: Скидка 10% на торговую марку для тех*, кто позвонит СЕГОДНЯ: Email: igor888@list.ru Тема: Торговые Марки Телефон: 2222222222222 Сообщение: Только для тех, кто СЕГОДНЯ

-------------------

проблемка:

Почему-то сообщение стало в одну строку. А было в столбик. Подскажите, пожалуйста, как это победить?

Спасибо, заранее!

Gerga
На сайте с 02.08.2015
Offline
94
#16
Игорь К:
Почему-то сообщение стало в одну строку. А было в столбик. Подскажите, пожалуйста, как это победить?

$headers = "Content-Type: text/plain; charset=UTF-8";
Z0
На сайте с 03.09.2009
Offline
826
#17
Игорь К:

проблемка:
Почему-то сообщение стало в одну строку. А было в столбик. Подскажите, пожалуйста, как это победить?
Спасибо, заранее!


// send email
$headers = "Content-Type: text/html; charset=UTF-8";
$Body = nl2br($Body);
$success = mail($EmailTo, $Subject, $Body, $headers);

Я думаю... не претендую на правду, в коде рыться лень :)

Gerga, да, навреное так :)

IL
На сайте с 20.04.2007
Offline
435
#18
ziliboba0213:
$headers = "Content-Type: text/html; charset=UTF-8";
$Body = nl2br($Body);

Gerga:
$headers = "Content-Type: text/plain; charset=UTF-8";

А оба варианта подойдут.

Просто при использовании HTML можно использовать и другое форматирование bold, к примеру..

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
Игорь К
На сайте с 07.02.2005
Offline
151
#19
Gerga:
$headers = "Content-Type: text/plain; charset=UTF-8";

Да, именно то: все теперь в столбик. Спасибо, Gerga! :)

Игорь К
На сайте с 07.02.2005
Offline
151
#20

Господа, мож кто подскажет: а как сделать, чтобы приходящая тема была без зябликов?

Почту принимаем The Bat. И на прилагаемой картинке видна сама проблема кодировки.

png 1111111111.png
123 4

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий