Отправка почты

  • Автор темы Автор темы STRELOK
  • Дата начала Дата начала

STRELOK

Новичок
Отправка почты

В общем делаю у себя регистрацию пользователей на сайте, щас дошел до этапа где надо отослать письмо. Начал делать класс отправки почты (вернее взял у ДЛЕ, и переделываю под себя, заодно вникаю в то как это работает вообще)... Вроде все правильно...

Но, на мне на мыло письма не доходят (майл, яндекс)... Более того, даже с локального сайта на ДЛЕ тоже не доходят...

Это нормально? Как тогда тестировать? (Хостинг есть)
 
Никакой полезной информации в вопросе не содержится.
 
А я что то не понятно спросил? Тут черным по серому написано, что отправленная почта с моего компа на мое мыло не приходит.


Заюзал библиотеку PHPMailer, хорошая вещь, но все равно не приходят!!!

Каким образом тогда тестировать все это???
 
раз не приходят, значит не работает.

а непонятно все. каким способом отправляешь (sendmail или черзе SMTP, если через него, то через какой), какие заголовки ставишь и т.п.
 
Код. Сделал тестовый модуль к себе на сайт, который обрабатывает www.site.net/mail/

PHP:
$this -> wse -> tpl -> StartNativePage();
$this -> wse -> mailer -> Subject = 'Это тест';
$this -> wse -> mailer -> Body = 'Это тест моей почтовой системы!';
$this -> wse -> mailer -> AddAddress('[email protected]', 'STRELOK');
if(!$this -> wse -> mailer -> Send())
{
  echo 'Не могу отослать письмо!';
}
else
{
  echo 'Письмо отослано!';
}
$this -> wse -> mailer -> ClearAddresses();
$this -> wse -> mailer -> ClearAttachments();
$this -> wse -> tpl -> StopNativePage( " - " . "123");

Класс отправки почты, можно сказать ничем не модифицированный PHPMailer

PHP:
require_once(php_path('phpmailer/class.phpmailer.php',LIB_DIR));

class WSE_Mailer extends PHPMailer
 {
	 public $wse;
	 
	 public function WSE_Mailer($wse)
	  {
		  $this->wse = $wse;
		  
		  $this -> ContentType = $this -> wse -> cfg -> site_cfg["charset"];
		  $this -> From = $this -> wse -> cfg -> site_cfg["mail_from_email"];
		  $this -> FromName = $this -> wse -> cfg -> site_cfg["mail_from_name"];
		  if ($this -> wse -> cfg -> site_cfg["mail_smtp_mode"] == "on")
		   {
			   $this -> Mailer = "smtp";
			   $h = $this -> wse -> cfg -> site_cfg["mail_smtp_host"];
			   $p = $this -> wse -> cfg -> site_cfg["mail_smtp_port"];
			   $u = $this -> wse -> cfg -> site_cfg["mail_smtp_user"];
			   $p = $this -> wse -> cfg -> site_cfg["mail_smtp_pass"];
			   
			   if ($h != "") $this -> Host = $h;  
			   if ($p != "") $this -> Port = $p;
			   if ($u != "" and $p != "")
			    {
					$this->SMTPAuth  = true;
					$this->Username  = $u;
					$this->Password  = $p;
				}
		   }
	  }
 }

Часть XML файла с настройками:

Код:
<mail_from_name>WebSiteEngine</mail_from_name>
<mail_from_email>[email protected]</mail_from_email>
<mail_smtp_mode>off</mail_smtp_mode>
<mail_smtp_host></mail_smtp_host>
<mail_smtp_port></mail_smtp_port>
<mail_smtp_user></mail_smtp_user>
<mail_smtp_pass></mail_smtp_pass>
 
ну и как по-твоему отправляется почта этим кодом? каким методом?
 
если бы ты читал ман, то ты бы знал, что для работы ф-ии mail нужен на машине sendmail. то, что происходит с письмами после отправки их пхп нужно смотреть в его логе.

[telepat mode on]
твой sendmail посылается за елки всеми почтовиками, так как у тебя нету ни домена, ни MX записи, ни back-resolve.
[telepat mode off]

на хостинге вопросы отправки почты надо решать с суппортом хостинга.
 
то что я и хотел услышать: с локальной машины письмо не отправишь.

Код код...

-~{}~ 07.01.10 15:50:

Та а если пойти другим способом... (Но он тоже не работает)

Как правильно присоединиться к smtp серверу яндекса или майла?
 
Как правильно присоединиться к smtp серверу яндекса или майла?
нужно иметь или полноценный почтовый домен, или аккаунт на данных серверах и передавать почту как их клиент (если они такое позволяют)

а еще провайдер может предоставлять своим клиентам открытый (может не совсем) релей
 
Автор оригинала: dimagolov
нужно иметь или полноценный почтовый домен, или аккаунт на данных серверах и передавать почту как их клиент (если они такое позволяют)

а еще провайдер может предоставлять своим клиентам открытый (может не совсем) релей
Ясно... Спасибо...

-~{}~ 07.01.10 16:09:

Автор оригинала: *****
позволяют
не понял!
 
Ок, щас поем схожу и подумаю, а то даже не завтракал сегодня =)
 
Сверху