login  Naam:   Wachtwoord: 
Registreer je!
 Forum

mail vraagje (Opgelost)

Offline cunces - 26/02/2010 17:47 (laatste wijziging 26/02/2010 17:49)
Avatar van cuncesNieuw lid Ik wil vanuit een phpscript iets mailen. Maar zowel mijn site bij one.com als schoolserver, heeft als adres niet hetgeen ik opgeef.

hier is m'n code:
  1. $email=$_GET['email'];
  2. $to = "$email";
  3. $subject = "Ej records subscription";
  4. $from = "contact@ej.be";
  5. $msg = "============================================\n";
  6. $msg .= "Welcome to the ej mailinglist\n";
  7. $msg .= "============================================\n\n";
  8. $msg .= " <a href=\"wwww.google.be\">Click here to confirm your subscription</a> \n\n";
  9. $msg .= "Kind regards, Ej records\n";
  10. mail($to, $subject, $msg, $from);


Kan dit niet zonder dat het emailadres verandert? of is er een andere manier?

4 antwoorden

Gesponsorde links
Offline vinTage - 26/02/2010 17:52
Avatar van vinTage Nieuw lid uit ervaring weet ik sowieso dat als je niet vanaf "desbetreffende" domein verzend sommige ISP's een alternatief opgeven voor de from.

Daarnaast kan je de Reply-To header meegeven.
Offline Joel - 26/02/2010 20:11 (laatste wijziging 26/02/2010 20:14)
Avatar van Joel Eigenaar Er moet "From:" voor het e-mailadres.

  1. $from = "From: Uw naam <contact@ej.be>";
Offline Koen - 26/02/2010 20:14
Avatar van Koen PHP expert Zoals de pagina op PHP.net het al beschrijft wordt het gebruik van de functie mail() voorgeschreven als volgt:
Citaat:
bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )


Als we dit nu eens van naderbij gaan bekijken, dan zien we dat jouw probleem zit bij de vierde parameter $additional_headers. In jouw script probeer je een e-mailadres door te spelen aan deze functie via een parameter waar je eigenlijk headers in zou moeten zetten. Een header is een soort van hoofding die aan het begin van een e-mailbericht wordt geplaatst. Hierin staat onder meer informatie over de email, de ontvanger, de verzender, een bijlage enzovoort. Voor de volledige details moet je maar eens de rfc doornemen. 

Een simpel voorbeeldje van hoe we zoiets doen is dus bijvoorbeeld dit:
  1. <?php
  2. $naar = 'Koen Van den Wijngaert <koen@sitemasters.be>';
  3. $onderwerp = 'foobar';
  4. $bericht = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam at elit et mauris blandit commodo nec ut justo. Integer eu sapien elit, non feugiat lorem.';
  5. // Interessante deel:
  6. $headers = "From: Ik <ik@sitemasters.be>\r\n";
  7. $headers .= "Reply-To: Mezelf <ik@sitemasters.be>\r\n";
  8. $headers .= "X-Mailer: PHP/" . phpversion();
  9. $mail_sent = mail($naar, $onderwerp, $bericht, $headers);
  10. if($mail_sent)
  11. {
  12. echo 'Jippie, de mail is succesvol verstuurd!';
  13. }
  14. else
  15. {
  16. echo 'Oeps, er is een foutje opgetreden bij het verzenden van dit bericht.';
  17. }
  18. ?>

Ik kan je moeilijk met dit stukje code de straat op sturen, vandaar dat ik even kort zal toelichten wat er zich nu precies heeft afgespeeld in bovenstaande code.

Eerst heb ik de ontvanger gespecificeerd, de ontvanger kan je schrijven als "koen@sitemasters.be", of "Koen Van den Wijngaert <koen@sitemasters.be>". Beiden zijn correct, de tweede optie ziet er alleen maar netter uit. Na ook het onderwerp en het bericht te hebben getypt komen we aan bij het interessante deel waar het ons eigenlijk om te doen was, de mail headers. In het voorbeeld hebben we enkele van de veel voorkomende headers gebruikt. De "From" header is misschien wel de interessantste, deze is ook de header die jij nodig zal hebben om een afzender mee te sturen. "Reply-to" duidt aan naar waar de mail wordt verstuurd indien er op "Beantwoorden" wordt geklikt in de mail client en X-mailer stuurt het medium waarmee de mail werd verstuurd mee, in dit geval PHP. Vergeet niet dat headers altijd moeten gescheiden worden door een carriage return (\r) en een line-feed (\n)! Voor een volledige lijst met e-mail headers verwijs ik je door naar de eerder vernoemde RFC.

Succes ermee 
Offline cunces - 27/02/2010 13:30
Avatar van cunces Nieuw lid bedankt 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.21s