[PHP] Mail probleempje

Pagina: 1
Acties:

Onderwerpen


  • avdwerf
  • Registratie: Maart 2007
  • Laatst online: 20:23
zit met een klein probleempje, heb een scriptje om via een site een bestelformulier door te sturen. Ik gebruikte daarvoor altijd het volgende script:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
//add From: header
$headers = "From: noreply@domein.nl\r\n";
                    
//specify MIME version 1.0
$headers .= "MIME-Version: 1.0\r\n";
                    
//unique boundary
$boundary = uniqid("HTMLDEMO");
                    
//tell e-mail client this e-mail contains//alternate versions
$headers .= "Content-Type: multipart/alternative"."; boundary = $boundary\r\n\r\n";

//message to people with clients who don't understand MIME
$headers .= "This is a MIME encoded message.\r\n\r\n";

//plain text version of message
$headers .= "--$boundary\r\n"."Content-Type: text/plain; charset=ISO-8859-1\r\n"."Content-Transfer-Encoding: base64\r\n\r\n";

$headers .= chunk_split(base64_encode("$bestelling_email_plain"));
                    
//HTML version of message
$headers .= "--$boundary\r\n"."Content-Type: text/html; charset=ISO-8859-1\r\n"."Content-Transfer-Encoding: base64\r\n\r\n";

$headers .= chunk_split(base64_encode($bestelling_email_html));
                    
//send message
mail($order_klant_email,"Orderbevestiging", "", $headers);


dit heeft altijd perfect gewerkt, nooit geen last van spam filters die hem tegenhouden ofzo. Maar nu moet ik voor een klant een mail versturen vanaf een windows server, en dan werkt dit script bij mij niet meer. Als ik nu dit script gebruik krijg ik een lege email binnen. Nu gebruik ik op die windows server het volgende script:

code:
1
2
3
4
5
6
7
8
9
10
$headers = "MIME-Version: 1.0\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
$headers .= "X-Priority: 3\n";
$headers .= "X-MSMail-Priority: Normal\n";
$headers .= "X-Mailer: PHP\n";
$headers .= "From: \"Website\" <noreply@domein.nl>\n";
$headers .= "Reply-to: \"Website\" <noreply@domein.nl>\n";
$headers .= "Return-Path: <noreply@domein.nl>\n";

mail($order_klant_email,"Orderbevestiging", $bestelling_email_html, $headers);


alleen wordt dit bericht wel door sommige spam filters tegengehouden, iemand enig idee hoe ik dat op kan lossen? of hoe ik het eerste script werkend krijg op een windows server?

  • MrOizo2005
  • Registratie: September 2003
  • Laatst online: 20-09 18:42
Als je de mail binnenkrijg kan je kijken bij de eigenschappen van de email (bron)
Daar staat meestal de reden in waarom hij als SPAM gemarkeerd wordt.

En anders even op de server de maillog in de gaten houden.

[ Voor 17% gewijzigd door MrOizo2005 op 30-08-2007 11:37 ]

Also known as Oizopower | When Life Gives You Questions, Google has Answers


Acties:
  • 0 Henk 'm!

  • evolnick
  • Registratie: Januari 2006
  • Laatst online: 04-06-2024
heb je beide codes geprobeerd op de windows servers? Als je alleen de onderste hebt gebruikt, zou je kunnen proberen om alle \n te vervangen met \r\n.
Mocht dat ook niet lukken, zou je een phpmailer script kunnen gebruiken: http://phpmailer.sourceforge.net/

Acties:
  • 0 Henk 'm!

  • Intheweb
  • Registratie: April 2005
  • Laatst online: 20:04
Een windows machine heeft af en toe wel eens last van mail problemen. Temminste dat is mijn ervaring.

Zelf adviseer ik om Swift Mailer te gaan gebruiken. Dit is de opvolger van phpmailer. Phpmailer word niet meer doorontwikkeld en daarom in mijn ogen niet betrouwbaar meer.
http://www.swiftmailer.org/

[ Voor 12% gewijzigd door Intheweb op 31-08-2007 11:26 ]

Doe maar een onsje meer...