Перейти к содержимому

Сервис обмена электронных валют

Партнерская программа Kredov

  • Закрытая тема Тема закрыта

Mail() - функция для отправки почты

#1 Banderas

Banderas
  • Пользователь
  • 1 168 сообщений
  • Репутация: 1
0

Отправлено 07 Январь 2011 - 21:13

В продолжение предыдущей темы про проверку на наличие переменных с помощью isset() создаю эту тему. Теперь передо мной стоит задача отправить сообщение, допустим, админу (тобишь мне) на почту уведомление о отзыве. Для этого я использую традиционно функцию mail(str кому, str тема, str текст, str откуда);

Мой код
$toadress = $mail;
$subject = 'Обратная связь';
$content = $data;
$fromadress = 'Banderas123@yandex.ru';

if (mail($toadress, $subject, $content, $fromadress)) echo '<p>good';

весь код можно посмотреть в теме, ссылка на которую выше...
Проблема заключается в том, что сообщение не отправляется. В чем проблема?

 

 

  • 0


#2 surfer

surfer
  • Заблокированные
  • 1 956 сообщений
  • Репутация: 71

Отправлено 07 Январь 2011 - 21:27

что значит не отправляется?
  • 0

#3 Banderas

Banderas
    Topic Starter
  • Пользователь
  • 1 168 сообщений
  • Репутация: 1

Отправлено 07 Январь 2011 - 21:41

Значит что на почту, которую я ввожу, не приходят сообщения.


  • 0


#4 admin

admin
  • Пользователь PRO
  • 5 272 сообщений
  • Репутация: 54

Отправлено 07 Январь 2011 - 21:49

Banderas, пробовал без:
if (mail($toadress, $subject, $content, $fromadress)) echo '<p>good';

то есть просто:
(mail($toadress, $subject, $content, $fromadress)

Мне почему-то кажется подозрительным применение конструкции if в данном случае ;)
  • 0

Сколько лет прошло, а ссылки всё ещё лучше покупать тут



#5 Banderas

Banderas
    Topic Starter
  • Пользователь
  • 1 168 сообщений
  • Репутация: 1

Отправлено 07 Январь 2011 - 21:51

пробовал, не работает...
все-равно, функция выполняется и возвращает true если письмо отправлено, в ином случае мы получаем false
Если if работает, значит mail() работает


  • 0


#6 matroskin8

matroskin8
  • Пользователь PRO
  • 767 сообщений
  • Репутация: 143

Отправлено 07 Январь 2011 - 21:53

Значит что на почту, которую я ввожу, не приходят сообщения.

А если указать другой адрес почты? Если все равно не приходит - значит ошибка где-то в другом участке кода, потому что то, что показано - должно без проблем работать. Единственное, четвертый аргумент ф-ции mail() правильнее будет писать так:
<?php 
$mail = '1@1.com';
$fio = "Иванов Иван Иванович";
$text = "Тестовое сообщение";
$date = date("d - F - Y ");
$data = $date. ' || ' . $fio. ' || ' .$mail. ' || ' .$text;

$toadress = $mail;
$subject = 'Обратная связь';
$content = $data;
$headers = "Content-type: text/html; charset=windows-1251 \r\n";
$headers .= "From: Banderas <Banderas123@yandex.ru>\r\n";

if (mail($toadress, $subject, $content, $headers)) echo '<p>good</p>';
?>


P.S. На Денвере только что протестил - все работает ;)
  • 0


#7 surfer

surfer
  • Заблокированные
  • 1 956 сообщений
  • Репутация: 71

Отправлено 07 Январь 2011 - 21:54

Banderas, у меня работает, ты где отлаживаешь скрипт?


  • 0

#8 matroskin8

matroskin8
  • Пользователь PRO
  • 767 сообщений
  • Репутация: 143

Отправлено 07 Январь 2011 - 22:13

Проблема заключается в том, что сообщение не отправляется. В чем проблема?

Да, кстати, а сообщение good выводится на экран?
  • 0


#9 Banderas

Banderas
    Topic Starter
  • Пользователь
  • 1 168 сообщений
  • Репутация: 1

Отправлено 07 Январь 2011 - 22:29

Сейчас попробую ввести другие имейлы. Тестирую на Денвере. Сообщение good выводиться... Всем спасибо, сейчас ещё разок проверю.
  • 0


#10 surfer

surfer
  • Заблокированные
  • 1 956 сообщений
  • Репутация: 71

Отправлено 07 Январь 2011 - 22:47

а ты где ищешь отправленное сообщение?
  • 0

robot

robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85


Оформление форума – IPBSkins.ru