я использую контактную форму ajax, загруженную с: http://youhack.me/2010/07/22/create-a-fancy-contact-form-with-css-3-and-jquery/
Все работает нормально, кроме UTF, так как я не могу использовать символы кириллицы при отправке.
PHP:
$name = $_POST['name']; // contain name of person
$email = $_POST['email']; // Email address of sender
$web = $_POST['web']; // Your website URL
$body = $_POST['text']; // Your message
$receiver = "[email protected]" ; // hardcorde your email address here - This is the email address that all your feedbacks will be sent to
if (!empty($name) & !empty($email) && !empty($body)) {
$body = "Name: {$name}\n\nSubject: {$web}\n\nMessage: {$body}";
$send = mail($receiver, 'Contact from domain.com', $body, "From: {$email}");
if ($send) {
echo 'true'; //if everything is ok,always return true , else ajax submission won't work
}
}
Он использует jquery.validationEngine-en для проверки. В моем html уже есть "Content-Type" content="text/html; charset=utf-8" в заголовке.
Я новичок в php и jquery, поэтому я хотел бы получить некоторые рекомендации, чтобы заставить UTF-8 работать при отправке. Спасибо :)
Редактировать: Когда я пытаюсь использовать кириллические символы (čšćđ) в обязательном поле, я получаю ошибку ввода ajax «Используйте только буквы». Если я отправляю форму с кириллическими символами в необязательном поле, я получаю и отправляю письмо, все письма отображаются нормально, кроме кириллицы, которые выглядят так: Å¡.
Редактировать 2: когда я устанавливаю получателя на gmail (веб-почту), кириллические символы отображаются нормально, за исключением одного поля, где Ajax не позволяет мне их использовать (регулярное выражение из ответа Рейндера).
Когда я устанавливаю получателя в Outlook (локальный) и отправляю форму, ни один из кириллических символов не отображается нормально, например: ÄĹĄ oÄa ĹĄ ÄŽŠÄÄ
РЕШЕНО Спасибо Рейндеру за руководство и Дэвиду! Сегодня разберусь :)