послать имейл через php - вопрос №395814

Здравствуйте! У меня в html документе есть форма. Я хочу чтобы через неё мне на имейл посылали сообщения. Я делаю php документ mail.php и просто в этот  пустой документ вставляю это:

<?php
 $to = «моёмыло@mail.ru»;
 $subject = «Hi!»;
 $body = «Hi,\n\nHow are you?»;
 if (mail($to, $subject, $body)) {
   echo("<p>Сообщение отправлено!!</p>");
  } else {
   echo("<p>Сообщение не отправлено...</p>");
  }
 ?>

В форме я естественно ссылаюсь на mail.php и пишуmethod=«post».

Ничего не доходит. Пишет что сообщение не отправлено.

Я ещё много разных комбинаций пробовал — ничё не работает. Хостинг оплачен. Помогите пожалуйста! Спасибо!

27.09.12
3 ответа

Ответы

bool mail ( string $to, string $subject, string $message [, string $additional_headers [, string $additional_parameters ]] )

При отправке письмо должно содержать заголовок From. Он может быть установлен с помощью параметра additional_headers, или значение по умолчанию может быть установлено в php.ini, или может быть в теле письма.

27.09.12

Мой Вам совет. Не морочьте себе голову с функцией mail. Лучше исспользуйте библиотеку PHPMailer (или ей подобную).

28.09.12

Попробуйте сохранять ответ функции в переменную:

$to = «Получатель <mail@example.com>»; 

$subject = «Тема пмсьма»; 

$body = «Выше письмо» 

$headers = «From: Отправитель <mail@example.com>\r\n»; 

$mail = mail($to, $subject, $body, $headers);

if ($mail==TRUE) {

echo «Сообщение отправлено!!»;

}

else {

echo «Сообщение не отправлено...»;

15.10.12

Дима

Читать ответы
Посмотреть всех экспертов из раздела Технологии > PHP
Пользуйтесь нашим приложением Доступно на Google Play Загрузите в App Store