php mail headers voor hotmail
weet iemand wat tegenwoordig de juiste php email headers zijn?
Als ik vanaf een outlook mail met mijn domein dan kom ik wel door de hotmail spamfilter heen en probeer ik het met een php script voor bv activatie mail kom ik er niet door heen. De meeste forums zijn al ver out off date en microsoft veranderd de boel nog wel eens. Ik hoop dat jullie me kunnen helpen.
Mvg Lennart
Geen idee, hoef ik ook niet te weten, Swift Mailer zoekt dat wel voor mij uit, ik heb geen zin om zelf het wiel opnieuw uit te vinden.
Code (php)
1
2
3
4
5
6
2
3
4
5
6
$header = "From: Sitenaam <[email protected]>\r\n";
$header .= "MIME-Version: 1.0\r\n";
$header .= "Content-type: text/html; charset=iso-8859-1\r\n";
$header .= "X-Priority: 2\r\n"; # 1 voor erg belangrijk
$header .= "X-MSMail-Priority: High\r\n";
$header .= "X-Mailer: PHP/".phpversion();
$header .= "MIME-Version: 1.0\r\n";
$header .= "Content-type: text/html; charset=iso-8859-1\r\n";
$header .= "X-Priority: 2\r\n"; # 1 voor erg belangrijk
$header .= "X-MSMail-Priority: High\r\n";
$header .= "X-Mailer: PHP/".phpversion();
Deze zijn sowieso wel handig. Ik weet ook niet precies welke het goed doen bij hotmail..
EDIT getest en die werken helaas niet :(. Iemand anders die toevallig met swift mailer ervaring heeft en die op dit moment ook gewoon zonder problemen werkt?
Gewijzigd op 01/01/1970 01:00:00 door Lennart
Lennart schreef op 11.05.2008 21:14:
Wat heeft Swift Mailer met PHPmailer te maken?swift mailer werkt niet net als phpmailer.
Hier de oplossing.
pgFrank schreef op 11.05.2008 21:10:
Geen idee, hoef ik ook niet te weten, Swift Mailer zoekt dat wel voor mij uit, ik heb geen zin om zelf het wiel opnieuw uit te vinden.
Ik heb swift toch maar weer eens geinstalleerd maar nou wil hij niet eens me domein uit mailen. Ik kan nu alleen mailen naar het mail adres waar ik vandaan mail
pgFrank schreef op 11.05.2008 21:37:
Hier de oplossing.
Lennart schreef op 11.05.2008 21:14:
Wat heeft Swift Mailer met PHPmailer te maken?swift mailer werkt niet net als phpmailer.
Hier de oplossing.
Oke heb hem inmiddels werken maar hij mailt wel naar Gmail en eigen domein maar niet naar hotmail. Daar komt ie niet door de spamfilter heen. Dit terwijl im met mijn domein wel kan mailen naar hotmail vanaf outlook. Werkt swift wel naar hotmail bij jou en welke versie heb je?
Ik heb me laten vertellen dat je bij je dns settings een spf record moet aanmaken. alleen ik heb het zelfde probleem als jou!
Klopt een SPF record is wel handig en het verkomt dat mensen vanuit jou naam kunnen gaan mailen. Maar om door de spamfilter van MS hotmail te komen is een SPF record niet verplicht. Ik kan namelijk wel met mijn outlook mailen (dan staan de headers kennelijk perfect) maar niet vanuit mijn php scripts.
ohw okee, das raar.
Ja probeer zelf maar eens dan zul je merken dat het hem puur in de headers zit.
Mij lukt het wel; ik heb oa de x-orginating-ip ertussen staan, dat was voor hotmail een verplichting.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$headers = 'From: <"[email protected]>'.PHP_EOL;
$headers .= 'To: lennart <[email protected]>'.PHP_EOL;
$headers .= 'Reply-To: [email protected] <[email protected]>'.PHP_EOL;
$headers .= 'X-Mailer: PHP v'.phpversion().PHP_EOL;
$headers .= 'X-Originating-IP: '.$_SERVER['REMOTE_ADDR'].PHP_EOL;
$headers .= 'MIME-Version: 1.0'.PHP_EOL;
$headers .= 'Content-Type: text/plain; charset=UTF-8'.PHP_EOL;
mail("[email protected]","test mail","dit is een bericht",$headers);
?>
$headers = 'From: <"[email protected]>'.PHP_EOL;
$headers .= 'To: lennart <[email protected]>'.PHP_EOL;
$headers .= 'Reply-To: [email protected] <[email protected]>'.PHP_EOL;
$headers .= 'X-Mailer: PHP v'.phpversion().PHP_EOL;
$headers .= 'X-Originating-IP: '.$_SERVER['REMOTE_ADDR'].PHP_EOL;
$headers .= 'MIME-Version: 1.0'.PHP_EOL;
$headers .= 'Content-Type: text/plain; charset=UTF-8'.PHP_EOL;
mail("[email protected]","test mail","dit is een bericht",$headers);
?>
Dat zijn me headers nu maar nog steeds geen resultaat bij hotmail :(.
Je gebruikt wel alleen echt bestaande emailadressen in je from en reply-to?
Hmm heb het bovenstaande ook even getest, zodra ik als afzender een hotmail adres invul komt het in de spambox als ik een ander domein invul werkt het wel!
Bij mij komt ie helemaal niet aan namelijk
Gewijzigd op 01/01/1970 01:00:00 door Lennart
Dit is het test scriptje dat ik gebruikt heb:
Code (php)
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
28
29
30
31
32
33
34
35
36
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
28
29
30
31
32
33
34
35
36
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
$sAfzender = "[email protected]";
$sNaar = "[email protected]";
// Headers
$headers = "From: \"Test mail\" <".$sAfzender.">\r\n";
$headers .= "Reply-To: \"Test mail\" <".$sAfzender.">\n";
$headers .= "Return-Path: Mail-Error <".$sAfzender.">\n";
$headers .= 'X-Mailer: PHP v'.phpversion().PHP_EOL;
$headers .= 'X-Originating-IP: '.$_SERVER['REMOTE_ADDR'].PHP_EOL;
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Transfer-Encoding: 8bit\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
// HTML Bericht
$bericht = '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
</head>
<body>
test mailtje hier
</body>
</html>';
if(mail($sNaar, "Maitlje", $bericht, $headers)) {
echo 'Succesvol gemailt';
}
else {
echo 'foutje';
}
?>
ini_set('display_errors', 1);
error_reporting(E_ALL);
$sAfzender = "[email protected]";
$sNaar = "[email protected]";
// Headers
$headers = "From: \"Test mail\" <".$sAfzender.">\r\n";
$headers .= "Reply-To: \"Test mail\" <".$sAfzender.">\n";
$headers .= "Return-Path: Mail-Error <".$sAfzender.">\n";
$headers .= 'X-Mailer: PHP v'.phpversion().PHP_EOL;
$headers .= 'X-Originating-IP: '.$_SERVER['REMOTE_ADDR'].PHP_EOL;
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Transfer-Encoding: 8bit\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\n";
// HTML Bericht
$bericht = '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
</head>
<body>
test mailtje hier
</body>
</html>';
if(mail($sNaar, "Maitlje", $bericht, $headers)) {
echo 'Succesvol gemailt';
}
else {
echo 'foutje';
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Thijs X
En welke php versie heb jij? Ik gebruik Wamp en dit is met php versie 5.2.5 en die pikt het niet als ik bij From: \"Test mail\" <".$sAfzender.">\r\n"; neer zet maar alleen maar als ik "From: <".$sAfzender.">\r\n"; geeft ie geen error.
Edit:
ik heb inmiddels versie 5.2.6
Gewijzigd op 01/01/1970 01:00:00 door Lennart
Lennart schreef op 12.05.2008 12:08:
Wat is bij jou de spambox? Is dat de map ongewenste email of mailtjes die je nooit meer terug ziet?
En welke php versie heb jij? Ik gebruik Wamp en dit is met php versie 5.2.5 en die pikt het niet als ik bij From: \"Test mail\" <".$sAfzender.">\r\n"; neer zet maar alleen maar als ik "From: <".$sAfzender.">\r\n"; geeft ie geen error.
Edit:
ik heb inmiddels versie 5.2.6
En welke php versie heb jij? Ik gebruik Wamp en dit is met php versie 5.2.5 en die pikt het niet als ik bij From: \"Test mail\" <".$sAfzender.">\r\n"; neer zet maar alleen maar als ik "From: <".$sAfzender.">\r\n"; geeft ie geen error.
Edit:
ik heb inmiddels versie 5.2.6
Er horen ook geen quotes in te staan.
Een goed adres ziet er zo uit:
From: Naam Persoon <[email protected]>
Lennart schreef op 12.05.2008 12:08:
Wat is bij jou de spambox? Is dat de map ongewenste email of mailtjes die je nooit meer terug ziet?
En welke php versie heb jij? Ik gebruik Wamp en dit is met php versie 5.2.5 en die pikt het niet als ik bij From: \"Test mail\" <".$sAfzender.">\r\n"; neer zet maar alleen maar als ik "From: <".$sAfzender.">\r\n"; geeft ie geen error.
Edit:
ik heb inmiddels versie 5.2.6
En welke php versie heb jij? Ik gebruik Wamp en dit is met php versie 5.2.5 en die pikt het niet als ik bij From: \"Test mail\" <".$sAfzender.">\r\n"; neer zet maar alleen maar als ik "From: <".$sAfzender.">\r\n"; geeft ie geen error.
Edit:
ik heb inmiddels versie 5.2.6
Spambox is ongeweste email inderdaad.
Als je het op je localhost draait kan daar het probleem liggen, waarschijnlijk heb je het dan niet goed ingesteld.
Upload het script eens naar een webserver ( als je ereen hebt ) en test hem vervolgens daar even. Grote kans dat het dan wel werkt.
Verander even de 2 variabelen in het bovenstaande scriptje van mij en upload die vervolgens eens naar een webserver.
Gewijzigd op 01/01/1970 01:00:00 door Thijs X