views:

107

answers:

1

Please tell me what I am doing wrong. I am sending an email using the Zend_Mail class like this:

$message = <<<STR
You have a new invoice!

Sign in to your clientarea to see it.

Best regards,

Company name
STR;

$mail = new Zend_Mail();
$mail->setBodyText($message);
$mail->setFrom('[email protected]', 'Company.com');
$mail->addTo('[email protected]', 'Client Name');
$mail->setSubject('You have a new invoice!');
$mail->send();

It is received as a spam though. There are other applications such as Webmin on my server and emails they send is not treated as SPAM.

+3  A: 

I have solved this by adding these lines:

$mail->setReplyTo('[email protected]', 'Company');
$mail->addHeader('MIME-Version', '1.0');
$mail->addHeader('Content-Transfer-Encoding', '8bit');
$mail->addHeader('X-Mailer:', 'PHP/'.phpversion());

The critical line seems to be adding Reply-To header. Without that it would always go to SPAM. Once I set the Reply-To header email clients stopped treating it as spam.

Richard Knop
What is the `from` header set to now?
Pekka
Richard Knop
@Richard Knop: feel free to accept your own answer as the correct one!
chelmertz