Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля
21.01.2010, 09:17
chuc

Зарегистрирован:
2009-10-08
Сообщений: 43

искал по сайту и в документакции так и не понял как отправку письмо при регистрации через smtp сервер.

у меня стоит exchange server 2007 с обязательной авторизацией

makushkin
21.01.2010, 10:43
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

В поставке неткета содержатся библиотеки PEAR. В частности среди них можно найти библиотеку по работе с почтой: /netcat/require/lib/Mail.php В данном модуле описан класс Mail и его методы по отправке.

Пример кода для отправки писем через SMTP с аутентификацией:
Код:

include($INCLUDE_FOLDER.'lib/Mail.php');
include($INCLUDE_FOLDER.'lib/Mail/mime.php');

// создание письма:
$headers["To"] = ...
$headers["From"] = ...
$headers["Subject"] = ...
$headers["content-type"] = 'multipart/mixed; charset=koi8-r';

$crlf = "n";
$mime = new Mail_mime($crlf);
$mime->settxtbody("текст для отправки");

$body = $mime->get(array('text_encoding' => '8bit',
'html_encoding' => '8bit',
'head_charset' => 'koi8-r',
'text_charset' => 'koi8-r',
'html_charset' => 'koi8-r' ));

$headers = $mime->headers($headers);


// работа с SMTP
$params["host"] = ...
$params["auth"] = // одно из: 'DIGEST-MD5', 'CRAM-MD5', 'LOGIN', 'PLAIN'
$params["username"] = ...
$params["password"] = ...

$smtp = mail::factory('smtp',$params);
if (pear::iserror($smtp)) die($smtp->getmessage());
$smtp->send($to, $headers, $body);


Для бОльшего понимания советую почитать описание PEAR библиотек.

Ну и соотв-но вам надо подправить текущий модуль регистрации в плане замены стандартной ф-иии отправки sendmail на описанный выше метод.

Temet nosce...
21.01.2010, 11:09
chuc

Зарегистрирован:
2009-10-08
Сообщений: 43

DiGGy писал(а):
В поставке неткета содержатся библиотеки PEAR. В частности среди них можно найти библиотеку по работе с почтой: /netcat/require/lib/Mail.php В данном модуле описан класс Mail и его методы по отправке.

Пример кода для отправки писем через SMTP с аутентификацией:
Код:

include($INCLUDE_FOLDER.'lib/Mail.php');
include($INCLUDE_FOLDER.'lib/Mail/mime.php');

// создание письма:
$headers["To"] = ...
$headers["From"] = ...
$headers["Subject"] = ...
$headers["content-type"] = 'multipart/mixed; charset=koi8-r';

$crlf = "n";
$mime = new Mail_mime($crlf);
$mime->settxtbody("текст для отправки");

$body = $mime->get(array('text_encoding' => '8bit',
'html_encoding' => '8bit',
'head_charset' => 'koi8-r',
'text_charset' => 'koi8-r',
'html_charset' => 'koi8-r' ));

$headers = $mime->headers($headers);


// работа с SMTP
$params["host"] = ...
$params["auth"] = // одно из: 'DIGEST-MD5', 'CRAM-MD5', 'LOGIN', 'PLAIN'
$params["username"] = ...
$params["password"] = ...

$smtp = mail::factory('smtp',$params);
if (pear::iserror($smtp)) die($smtp->getmessage());
$smtp->send($to, $headers, $body);


Для бОльшего понимания советую почитать описание PEAR библиотек.

Ну и соотв-но вам надо подправить текущий модуль регистрации в плане замены стандартной ф-иии отправки sendmail на описанный выше метод.


благодарю за разъяснения

makushkin
198 196 2010-01-21 11:09:55 10123
Описание проекта