Goedemorgen,

Heb een simpel PHP mailscript aangepast IVM het "from" field wat vaak moet verwijzen naar een [email protected], IPV het emailadres wat is ingevuld door de verzender, IVM spammisbruik. Mijn script werkt bij de ene webhost maar niet bij de andere.

Dit stukje code werkt bijna goed, maar als ik dan reply in GMAIL staat mijn eigen adres in het reply field:

$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .

Dat heb ik daarom vervangen voor dit en dat werkt bij de ene maar niet bij de andere webhost, daar klopt de output niet:

$headers = "From: [email protected]";
$headers .= "Reply-To: $email_from";


Hier gaat het fout, uit de header:


From: "[email protected]:test"@test.nl

Dus daar wordt from en reply niet gescheiden, denk dat het iets heeft te maken met de opmaak, de quotes, en die puntjes maar ik weet het niet. Probleem is dat ik bij de host waar het niet werkt niet veel kan testen, de server blokkeert mijn mail als er iets niet klopt bij het from field.

Iemand een tip?

BVD!

Gr. Arno
Maar er is wel iets aan de hand, ik zie bij de ene webhost in het Naam/van veld in Gmail het emailadres wat is ingevuld in het formulier, maar via andere webhost zie ik in gmail het gedeelte vóór de apestaart, dus in dit geval info, in het van/from veld? Hoe krijg ik daar de naam of het email uit het formulier?

Gaat dit over het lezen van ontvangen e-mail? Hangt dat niet van de e-mailclient af, die op verschillende manieren afzenders representeert, bijvoorbeeld omdat een naam al voorkomt in een adresboek ofzo? Dit hangt dan van de (web)applicatie af en ligt buiten jouw invloed.
Als je de simpele vorm gebruikt (enkel $email_from) zie je natuurlijk alleen het e-mailadres (tenzij een applicatie dit dus vergelijkt met een adresboek en dan een naam toont). Als de composietvorm gebruikt (naam <e-mail>) dan wordt meestal een klikbare link getoond. Maar ja, dat hangt dus af van hoe je het bericht bekijkt.
Arno Veers op 24/09/2018 16:19:28

Bedankt, tussen de quotes? Hoe precies?

je gaf het antwoord al zelf ;-)


$headers .= 'Reply-To: ' . $naam . ' <' . $email_from . '>' . "\r\n";
Maar dat werkt niet? Kan dat aan de webhost liggen? $naam gebruik ik wel en staat wel in het emailbericht, maar ik krijg telkens in het afzender/van veld in gmail, het gedeelte wat voor de apestaart staat in het from veld:

$headers = "From: [email protected]". "\r\n";

Dus dan staat er BLABLA in het van veld in Gmail, en dan alleen bij bepaalde webhosts?

Snap het niet...
Omdat je de < en > niet gebruikt. Ik heb het niet uitgetest, maar het lijkt er op dat als er geen onderscheid in de naam en het mailadres is, dat Gmail standaard de mail-alias voor het @ maar toont.

Als je sowieso al tegen header-problemen aanloopt. Waarom gebruik je die headers niet uit het genoemde wiki-artikel, die ik opnoemde? Ik heb die al met succes op diverse servers gebruikt.
Arno Veers op 24/09/2018 16:34:40
Dus dan staat er BLABLA in het van veld in Gmail, en dan alleen bij bepaalde webhosts?

Lees mijn vorige reactie (nogmaals).

Reageren