15:40

Правильного ответа нет. Любой выбор приводит к жертвам, любое решение требует платы. | Лишь навык имеет значение.
Отправка писем в php
Здравствуйте.

Задача: отправка писем с сайта, независимо от ОС хостинга.
Вопрос: это возможно?

Гугля предлагает mail(). Пишу:

<?php
$to = "[email protected]";
$subject = "Тема Письма";
$message = 'Это Текст Письма';
$headers = "Content-type: text/html; charset=windows-1251 \r\n";
$headers .= "From: [email protected] \r\n";

$d = mail($to, $subject, $message, $headers);
if ($d == "true") //проверяю, что вернула функция.
echo "sended";
else
echo "not sended";
?>

Всё время выводит "not sended".

Дальнейший поиск вывел на это: www.plahovka.ru/code/view.php?id=1
Где говорится, что mail() просто передаёт параметры sendmail'у.
Соответственно, т.к. у меня сейчас на винде всё, отправка и не получается.

В общем, можно как-нибудь реализовать отправку писем, независимо от операционки, только своими средствами?

Комментарии
06.04.2012 в 15:56

молодой динамично развивающийся
PEAR::Mail
06.04.2012 в 16:28

( . )( . )админ
PEAR::Mail сокетом smtp
06.04.2012 в 16:49

Правильного ответа нет. Любой выбор приводит к жертвам, любое решение требует платы. | Лишь навык имеет значение.
Чудеснов, 2(che)n, ... Ладно, будем "курить" что это за трава.
06.04.2012 в 20:23

Sanctus Satanas
if ($d == "true")
Лол же. Булевое значение при преобразовании в строку будет "" (пустая строка) или "1". Т.е. оно никогда не будет равно строке "true".
06.04.2012 в 20:52

Правильного ответа нет. Любой выбор приводит к жертвам, любое решение требует платы. | Лишь навык имеет значение.
--==SS==--, Да это я по привычке - в js булевое нормально в строку конвертится и выводится строкой.
06.04.2012 в 22:06

Sanctus Satanas
А я, кстати, наврал. ^_^ При сравнении вида (bool == что_угодно) как раз второй аргумент преобразуется в bool, т.е. в данном случае "true", как непустая строка, превратится в true. Но всё равно не надо так писать. ))) Тем более, что оператор if сам по себе предполагает, что выражение в условии будет сравниваться с true. Т.е. «if (что-нибудь)» это всегда, по сути, «if (что-нибудь == true)».
Ну а вообще по теме: habrahabr.ru/post/26518/