Слушайте, я уже неделю бьюсь с отправкой html письма и таки нихера не могу понять почему оно не отправляется. Когда я тупо пишу код для отправки без классов и т.д., вот так он выглядит примерно:
Спойлер (Отобразить)PHP:
скопировать код в буфер обмена
$to = "Mary <mary@example.com>, " ; $to .= "Kelly <kelly@example.com>"; $subject = "Birthday Reminders for August"; $message = ' <html> <head> <title>Birthday Reminders for August</title> </head> <body> <p>Here are the birthdays upcoming in August!</p> </body> </html>'; $headers = "Content-type: text/html; charset=utf-8 \r\n"; $headers .= "From: Birthday Reminder <birthday@example.com>\r\n"; $headers .= "Bcc: birthday-archive@example.com\r\n"; mail($to, $subject, $message, $headers);
Все нормаль отправляется, при этом заголовок письма выглядит вот так:
Спойлер (Отобразить)From admin@videokursy.kz Wed Feb 20 23:50:52 2013
Return-path: <admin@videokursy.kz>
Authentication-Results: mxs.mail.ru; spf=pass (mx169.mail.ru: domain of videokursy.kz designates 89.218.97.68 as permitted sender) smtp.mailfrom=admin@videokursy.kz smtp.helo=senimsoft.kz
Received-SPF: pass (mx169.mail.ru: domain of videokursy.kz designates 89.218.97.68 as permitted sender) client-ip=89.218.97.68; envelope-from=admin@videokursy.kz; helo=senimsoft.kz;
Received: from [89.218.97.68] (port=57951 helo=senimsoft.kz)
by mx169.mail.ru with esmtp (envelope-from <admin@videokursy.kz>)
id 1U8Fgp-0005df-KX
for nikinik@inbox.ru; Wed, 20 Feb 2013 23:50:52 +0400
X-Mru-BL: 11:0:0
X-Mru-PTR: senimsoft.kz
X-Mru-NR: 1
X-Mru-OF: Linux (Ethernet or modem)
X-Mru-RC: KZ
Received: from senimsoft.kz (localhost [127.0.0.1])
by senimsoft.kz (Postfix) with ESMTP id 8C618201D6B;
Thu, 21 Feb 2013 01:47:43 +0600 (ALMT)
Received: (from apache@localhost)
by senimsoft.kz (8.14.4/8.14.4/Submit) id r1KJlgbk022905;
Thu, 21 Feb 2013 01:47:42 +0600
Date: Thu, 21 Feb 2013 01:47:42 +0600
Message-Id: <201302201947.r1KJlgbk022905@senimsoft.kz>
X-Authentication-Warning: senimsoft.kz: apache set sender to admin@videokursy.kz using -f
To: nikinik@inbox.ru
Subject: Birthday Reminders for August
X-PHP-Originating-Script: 502:sendmail.php
Content-type: text/html; charset=utf-8
From: Birthday Reminder <apache@senimsoft.kz>
X-Spam: Not detected
X-Mras: Ok
X-Mru-Authenticated-Sender: admin@videokursy.kz
Но, когда я решаю написать простейший класс для этого дела (выглядит он примерно так):
Спойлер (Отобразить)PHP:
скопировать код в буфер обмена
{ // создаем переменные, в которых хранится содержимое заголовков var $to = ""; var $subject = ""; var $msg = ""; var $headers = ""; function send() /* метод отправки сообщения */ { } }
И вызвать его таким образом:
Спойлер (Отобразить)PHP:
скопировать код в буфер обмена
include ('include/class_mail.php'); $mail->to = "nikinik@inbox.ru"; $mail->subject = "Birthday Reminders for August"; $mail->msg = ' <html> <head> <title>Birthday Reminders for August</title> </head> <body> <p>Here are the birthdays upcoming in August!</p> <p>Тестируем отправку html</p> </body> </html>'; $mail->headers = "Content-type: text/html; charset=utf-8 \r\n"; $mail->headers .= "From: test <1028@kazee.kz>\r\n"; $mail->headers .= "Bcc: apache@senimsoft.kz\r\n"; $mail->send(); //echo $mail->headers; echo 'test';
html почему-то не отправляется!!! Причем, от предшествующего метода заголовки отличаются лишь датами и id-шниками письма. Такие загаловки как Content-type и charset выглядят одинаково. Вот для сравнения:
Спойлер (Отобразить)From admin@videokursy.kz Thu Feb 21 00:21:09 2013
Return-path: <admin@videokursy.kz>
Authentication-Results: mxs.mail.ru; spf=pass (mx176.mail.ru: domain of videokursy.kz designates 89.218.97.68 as permitted sender) smtp.mailfrom=admin@videokursy.kz smtp.helo=senimsoft.kz
Received-SPF: pass (mx176.mail.ru: domain of videokursy.kz designates 89.218.97.68 as permitted sender) client-ip=89.218.97.68; envelope-from=admin@videokursy.kz; helo=senimsoft.kz;
Received: from [89.218.97.68] (port=57959 helo=senimsoft.kz)
by mx176.mail.ru with esmtp (envelope-from <admin@videokursy.kz>)
id 1U8GA9-0000i2-EN
for nikinik@inbox.ru; Thu, 21 Feb 2013 00:21:09 +0400
X-Mru-BL: 11:0:0
X-Mru-PTR: senimsoft.kz
X-Mru-NR: 1
X-Mru-OF: Linux (Ethernet or modem)
X-Mru-RC: KZ
Received: from senimsoft.kz (localhost [127.0.0.1])
by senimsoft.kz (Postfix) with ESMTP id D959E201BD1;
Thu, 21 Feb 2013 02:18:02 +0600 (ALMT)
Received: (from apache@localhost)
by senimsoft.kz (8.14.4/8.14.4/Submit) id r1KKI2BZ023899;
Thu, 21 Feb 2013 02:18:02 +0600
Date: Thu, 21 Feb 2013 02:18:02 +0600
Message-Id: <201302202018.r1KKI2BZ023899@senimsoft.kz>
X-Authentication-Warning: senimsoft.kz: apache set sender to admin@videokursy.kz using -f
To: nikinik@inbox.ru
Subject: Birthday Reminders for August
X-PHP-Originating-Script: 502:class_mail.php
Content-type: text/html; charset=utf-8
From: test <1028@kazee.kz>
X-Spam: Not detected
X-Mras: Ok
X-Mru-Authenticated-Sender: admin@videokursy.kz
Прямо издевательство какое-то!!! У меня уже терпения не хватает. Что это еще за хрень? (Отредактировано автором: 20 Февраля, 2013 - 22:36:17)
|