У меня возникли проблемы с отправкой писем через PHP.PHP Отправка электронной почты Ошибка Comma
Так у меня есть форма, которая отправляет на PHP скрипт, который отправляет по электронной почте:
<?php
$to = "[email protected]";
$subject = "[Contact Form]";
$name = $_POST["name"];
$contactNumber = $_POST["contactNumber"];
$email = $_POST["email"] ;
$message = $_POST["message"];
$body = "Someone has sent a new message from the contact form. \n \n Message from: " . $name . "\n Contact Number: ". $contactNumber ."\n Email: ". $email ."\n \n Message: ". $message;
if (mail($to, $subject, $body)) {
echo ("<p>Email successfully sent!</p>");
} else {
echo ("<p>Email delivery failed…</p>");
}
?>
И электронная почта отправляется в порядке, когда, например, сообщение одна линия, таких как:
«Привет, как дела?»
И хорошо, если это несколько линий, таких как
"Привет там
, как это происходит?"
Но когда я пытаюсь напечатать сообщение с запятой, такой как
Привет,
, как это происходит?
Не удается?
Есть ли способ, которым я могу просто обработать все это как строку? Будет ли это также терпеть неудачу на любых других персонажах или это проблема только из-за того, как я пишу PHP-скрипт?
Это может быть очевидное решение, но я новичок в PHP, поэтому извиняюсь! Я попытался оглядеться, чтобы ответить, но ничего не исправляет то, что я ищу.
Спасибо за помощь!
присвоить массив POST для сообщения переменного первым. то же самое для всех ваших других POST-массивов, это проще. –
Ошибка электронной почты из-за запятой в строке? Довольно загадочно. Вам нужно будет сделать еще кое-что, чтобы кто-то мог вам помочь. Сначала попробуйте обернуть строку в 'utf8_encode', чтобы избежать каких-либо странных символов. – dan08
Попробуйте использовать htmlentities: http://php.net/manual/de/function.htmlentities.php –