Archief - Mail() functie en hotmail, etc.

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Unrach

Legacy Member
Hey allemaal,

Ik heb al wat zitten googlen en dit blijkt een veel gezocht onderwerp te zijn. Maar helaas vond ik nog altijd geen antwoord.

Het oh zo bekende probleem is dat hotmail uw mails via de mail() functie aan ziet als spam. En zo dus niet ontvangt of in de spam folder plaatst.

De beste oplossing is ne smtp server gebruiken. Maar ik heb voor de makkelijkste manier gekozen en de "From" header op de juiste afzender gezet.

Het heeft gewerkt, maar na een server transfer ineens niet meer. Ik zelf heb mijn eigen email adres waar ik het wel op ontvang. Maar op ne hotmail komt de mail dus gewoon niet aan.

Hierbij zoek ik dus wat hulp. Dit is de mail functie die ik gebruik:
PHP:
$to = "[email protected]";
$subject = $topic;
$message = "<b>test</b>";
$from = "Test <[email protected]>";

$headers = "From: $from\r\n";
$headers .= 'Reply-To: Test <[email protected]>\r\n';
$headers .= 'Return-Path: Test <[email protected]>\r\n';		
$headers .= "MIME-Version: 1.0\r\n"; 
$headers .= "Content-Type: text/html; charset=iso-8859-1\r\n"; 
$headers .= "Content-Transfer-Encoding: 8bit\r\n"; 
$headers .= "X-Mailer: PHP v" . phpversion(); 
		
mail($to,$subject,$message,$headers);

Zoals ge ziet gebruik ik rechtstreeks het server adres, dus normaal zou hij niet als spam mogen opduiken. Na wat zoek werk lijken mijn headers ook wel te kloppen. Dus het is voor mij een mysterie, of moet ik iets in mijn php.ini aanpassen?

Alvast bedankt!

shadowstep0705

Legacy Member
Waarom gebruik je gewoon geen smtp server? Er bestaan vele tutorials voor

exxhal

Legacy Member
Probeer anders eens in je $from je hotmail adres te zetten.

Ik heb er anders geen probleem mee en gebruik ongeveer hetzelfde script en ontvang de verzonden email goed in hotmail.

Cycloon

Legacy Member
Enkele tips:

- Het gebruikte emailadres waarvan verzonden is moet echt bestaan
- De smtp-server gebruiken van hetzelfde domein als je e-mailadres
- Geen obscure onderwerpen gebruiken of woorden in de body die vaak in spam mails gebruikt worden

Unrach

Legacy Member
Merci voor de reacties. [email protected] is het email adres van de server. Dus dat zou moeten kloppen. Maar ik zal anders eens proberen zoals shadowstep0705 zegt, zelf een smtp server te gebruiken.

En als ik in de $from een hotmail adres zet word dat aangezien als spam, omdat het originele adres dan niet overeenkomt.

dupondje

Legacy Member
Of je nu via SMTP server verzend, of via mail() zal weinig uitmaken.
Mail stuurt op zich ook door naar de SMTP server.

Heb je soms een SPF record op de domeinnaam van de afzender?
Hotmail heeft dat namelijk graag :)

Unrach

Legacy Member
dupondje zei:
Heb je soms een SPF record op de domeinnaam van de afzender?
Hotmail heeft dat namelijk graag :)

Ik heb dat eens zitten opzoeken en dat blijft vaag voor mij. Ik heb dus gezien dat ik in mijn cPanel die kan aanmaken. Heb ik ook gedaan, en ik heb nu zo ne record. Moet ik die in mijn headers ergens meegeven? Of moet ik een bepaalde host toevoegen daarin? Er stond al standaard een IP adres in, ik neem aan dat da van de server zelf is.

dupondje

Legacy Member
Dat record legt vast welke mailservers emails mogen versturen voor @uwdomeinnaam.
Als ge dan bijvoorbeeld met een andere mailserver emails verstuurt, of een spammer misbruikt u domeinnaam. Zal de ontvangende mailserver checken wat het SPF record is, van welke server de mail komt.

Komt de mail van de mailserver in uw SPF record, dan zal die worden accepted.
Komt die echter van een andere mailserver, zal deze is meeste gevallen worden geblokkeerd.

Unrach

Legacy Member
dupondje zei:
Dat record legt vast welke mailservers emails mogen versturen voor @uwdomeinnaam.
Als ge dan bijvoorbeeld met een andere mailserver emails verstuurt, of een spammer misbruikt u domeinnaam. Zal de ontvangende mailserver checken wat het SPF record is, van welke server de mail komt.

Komt de mail van de mailserver in uw SPF record, dan zal die worden accepted.
Komt die echter van een andere mailserver, zal deze is meeste gevallen worden geblokkeerd.

Ahzo mercikes. Toch wel iets handig om te gebruiken :-)

EDIT: Ik heb mijn hosting bedrijf gecontacteerd want het wertke nog altijd niet. Ze hebben er voor gezorgd dat de mail() functie niet werkt. Ik moet authorisation gebruiken door zelf een SMTP te maken.




shadowstep0705 zei:

Ik heb het extact zo gecopy / paste met mijn juiste gegevens. En krijg volgende output:
Code:
Warning: fsockopen() [function.fsockopen]: unable to connect to mail.yapperdesign.com:25 (Connection timed out) in /home/yapperde/public_html/includes/extra.php on line 17

Warning: fgets() expects parameter 1 to be resource, boolean given in /home/yapperde/public_html/includes/extra.php on line 18
Failed to connect:

Zeer vreemd, want in mijn mail client werkt het wel met de juiste gegevens.



EDIT: Ik heb mijn mail server veranderd naar "localhost" en het werkt perfect nu. Merci voor de hulp althans!
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan