login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Headers zijn in mail zichtbaar (Opgelost)

Offline tomie94 - 26/10/2008 12:07 (laatste wijziging 26/10/2008 12:07)
Avatar van tomie94PHP interesse Hallo,

Ik heb de volgende code:
  1. $bericht = 'Beste '.$_POST['username'].',<br /><br />Bedankt dat je je hebt aangemeld op Habbonline! Je account staat voor je klaar, maar je moet hem nog activeren. Dat kun je doen door op de link hieronder te klikken!<br /><br /><a href="'.URL.'/p/active/'.$key.'/" style="color: #FF9731; text-decoration: none;">Activeer mijn account!</a><br /><br />Met vriendelijke groeten,<br /><br />Het Habbonline Team<br /><a href="'.URL.'" style="color: #FF9731; text-decoration: none;">www.habbonline.nl</a>';
  2. $headers = 'MIME-Version: 1.0' . "\r\n";
  3. $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
  4. $headers .= 'To: '.$_POST['username'].' <'.$_POST['email'].'>' . "\r\n";
  5. $headers .= 'From: Habbonline <no-reply@habbonline.nl>' . "\r\n";
  6. mail($_POST['email'], 'Activatie van je account op Habbonline', $bericht, $headers);


als ik dit mailtje verstuur, krijg ik heb 2x in me mailbox, terwijl hij maar een keer vezonden wordt, en ik krijg de headers ook in het mailtje te zien. Weet iemand wat het probleem hieraan is?

Het mailtje:
  1. Content-type: text/html; charset=iso-8859-1
  2. To: bob7p <tomk@live.nl>
  3. From: Habbonline <no-reply@habbonline.nl>
  4. Return-Path: anonymous@server56.hosting2go.nl
  5. X-OriginalArrivalTime: 26 Oct 2008 11:03:39.0532 (UTC) FILETIME=[804464C0:01C9375A]
  6.  
  7.  
  8. Beste bob7p,<br /><br />Bedankt dat je je hebt aangemeld op Habbonline! Je account staat voor je klaar, maar je moet hem nog activeren. Dat kun je doen door op de link hieronder te klikken!<br /><br /><a href="URL/p/active/voorwaarden/" style="color: #FF9731; text-decoration: none;">Activeer mijn account!</a><br /><br />Met vriendelijke groeten,<br /><br />Het Habbonline Team<br /><a href="URL" style="color: #FF9731; text-decoration: none;">www.habbonline.nl</a>

9 antwoorden

Gesponsorde links
Offline Martijn - 26/10/2008 12:23 (laatste wijziging 26/10/2008 12:24)
Avatar van Martijn Crew PHP naja, zoals je ziet word de html niet uitgevoerd...

edit dus even zoeken naar de juiste regel
Offline tomie94 - 26/10/2008 12:25
Avatar van tomie94 PHP interesse
DeviourSoul schreef:
naja, zoals je ziet word de html niet uitgevoerd...

edit dus even zoeken naar de juiste regel


dat had ik ook wel gezien, maar hoe is het op te lossen?
Offline Diko - 26/10/2008 13:01
Avatar van Diko PHP interesse DeviourSoul zegt dat de html niet word geparsed, maar de headers worden wel netjes voor het bericht geplakt. Oftewel deze worden wel meegegeven maar vervolgens ziet de client ze niet als headers.

Wat gebeurd er als je het volgende uitvoerd:

  1. $bericht = 'Beste username,<br /><br />Bedankt dat je je hebt aangemeld op Habbonline! Je account staat voor je klaar, maar je moet hem nog activeren. Dat kun je doen door op de link hieronder te klikken!<br /><br /><a href="'.URL.'/p/active/key/" style="color: #FF9731; text-decoration: none;">Activeer mijn account!</a><br /><br />Met vriendelijke groeten,<br /><br />Het Habbonline Team<br /><a href="url" style="color: #FF9731; text-decoration: none;">www.habbonline.nl</a>';
  2. $headers = 'MIME-Version: 1.0' . "\r\n";
  3. $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
  4. $headers .= 'To: bob <bob@bob.nl>' . "\r\n";
  5. $headers .= 'From: Habbonline <no-reply@habbonline.nl>' . "\r\n";
  6. mail('tomk@live.com', 'Activatie van je account op Habbonline', $bericht, $headers);


Dus gebruik eerst zo min mogelijk variabelen.

En ik zie trouwens niets van beveiliging op $_POST['username'] enzo? Wel van belang om dit netjes te beveiligen natuurlijk ;)
Offline Stijn - 26/10/2008 13:34
Avatar van Stijn PHP expert Laat die \r (of \n) eens weg.
Offline Giant - 26/10/2008 13:34
Avatar van Giant PHP beginner het zit hem in die To header...
daarin stuur je hem ook via de header...
dus dan stuur je hem zowel met de $to var in de functie mail, en met die To header 
Offline Diko - 26/10/2008 13:50
Avatar van Diko PHP interesse Maar hoe verklaar je dan dat de HTML als plaintext wordt weergegeven?
Offline Koen - 26/10/2008 13:59
Avatar van Koen PHP expert
Diko schreef:
Maar hoe verklaar je dan dat de HTML als plaintext wordt weergegeven?


Omdat er nergens staat aangegeven in de headers dat het HTML is -.-' Als er "Content-type: text/html; charset=iso-8859-1" in de mail zelf staat lijkt het me sterk dat het ook nog eens in de header zal staan.
Offline Diko - 26/10/2008 17:50
Avatar van Diko PHP interesse No shit sherlock -_-'

Het word dus wel bij de headers mee opgegeven, echter ziet je client de headers niet als headers... de vraag is (ik spreek nu even voor TS) hoe het komt dat de client de headers niet als headers accepteerd?

Waarschijnlijk ergens door een stijl of charactersetfoutje ofzo.. (want de header regels zijn 1 op 1 gekopieerd van php.net) vandaar dat ik voorstelde om de code eens zonder variabelen uit te voeren om te zien of dat wel werkt. Software kan soms nogal stricte data nodig hebben. Als deze een bepaald karakter verwacht maar deze niet krijgt is het dus mogelijk dat hij het negeert.
Offline tomie94 - 26/10/2008 19:19
Avatar van tomie94 PHP interesse
stijn1989 schreef:
Laat die r (of n) eens weg.


bedankt, het is hierdoor gelukt!
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.217s