| 1. InleidingMail-functie
 2. Basis
 3. Headers
 4. Error
 
 1. Inleiding
 
  In deze tutorial wil ik het gaan hebben over de mail-functies. Dus over hoe 
  je hoe moet gebruiken. Ik ga in deze tutorial niet al te uitgebreid in op alle 
  headers, omdat deze tutorial anders te uitgebreid wordt. 
  top 2. Basis
 
 
 
   
    | 
<?php
mail($naar_emailadres, $onderwerp, $bericht, $headers);
 ?>
 |  Op deze manier moet je de mailfunctie invullen. Als eerste moet je het e-mailadres
  invullen waar dit mailtje naar toe moet. Als tweede moet je een onderwerp toevoegen. 
  Als derde een bericht en als laatste de headers. Zoals je ziet is het eigenlijk heel simpel om een mailtje te versturen. 
Laten we nu maar een formulier gaan maken waarmee je een mail kunt versturen. 
   
    |  <?php if (IsSet($_POST['submit']))
 {
 $naam_ontvanger = 
        $_POST['naar_naam'];
 $email_ontvanger 
        = $_POST['naar_emailadres'];
 
 $naam_verzender = 
        $_POST['van_naam'];
 $email_verzender 
        = $_POST['van_emailadres'];
 
 $onderwerp = 
        $_POST['onderwerp'];
 $bericht_verzender 
        = $_POST['bericht_verzender'];
 
 
 $headers = 
        "From: ".$naam_verzender." 
        <".$email_verzender.">
";
 
 $bericht = 
        "
 Beste ".$naam_ontvanger.",
 
 ".$naam_verzender." 
        heeft jou een berichtje gestuurd. Hieronder is zijn berichtje te lezen.
 
 --------bericht--------
 ".$bericht_verzender."
 --------bericht--------
 
 mvg,
 Sitemasters.be
 ";
 
 mail($email_ontvanger, 
        $onderwerp, 
        $bericht, $headers);
 
 }
 else
 {
 ?>
 <form action="" 
        method="post">
 Naam ontvanger: <input 
        type="text" name="naar_naam"><br />
 Email ontvanger: 
        <input type="text" name="naar_emailadres"><br /><br />
 Naam verzender: <input 
        type="text" name="van_naam"><br />
 Email verzender: 
        <input type="text" name="van_emailadres"><br /><br />
 Onderwerp: <input 
        type="text" name="onderwerp"><br />
 bericht:<br />
 <textarea name="bericht_verzender"></textarea>
 <br /><br 
        />
 <input type="submit" 
        name="submit" value="versturen">
 </form>
 <?php
 }
 ?>
 |  Dit is een heel klein voorbeeldje van een mail-formulier. Je kunt hem gemakkelijk 
  uitbreiden maar voor deze tutorial is dat eigenlijk onnodig, dus heb ik de overbodige 
dingen uitgelaten. In dit voorbeeld wordt er een header toegevoegd.$headers = "From: ".$naam_verzender." <".$email_verzender.">
";
 Deze header zorgt ervoor dat, als iemand dit berichtje binnen krijgt, dat de 
  naam van de verzender mee wordt verstuurd met dit mailtje. Ook het e-mailadres 
  (waar je op kunt reageren) wordt meegestuurd. Dit is een header die je eigenlijk 
  niet uit je mail-formulier kunt weglaten. Ook zie je dat ik in het bericht enters heb gegeven, en dat deze automatisch 
  (zonder dat je een <br /> hebt meegegeven) in een webapplicatie goed gezet 
  worden.
  top 3. Headers
 
 Nu gaan we een aantal headers bekijken en toevoegen.   $headers = "MIME-Version: 1.0
";$headers .= "Content-type: text/html; charset=iso-8859-1
";
 Deze twee headers zorgen ervoor dat je een bericht met HTML kan toevoegen. Dit 
  klinkt heel leuk, maar het kan voor slordigheden zorgen als je hem verstuurd 
  naar een webapplicaties die geen HTML ondersteunt.
 $headers .= "Return-Path: jouw_naam <error@jouw_site.nl>
";
 Deze header zorgt ervoor dat als er een fout is ontstaan bij het versturen 
  van een mailtje, dat je kan aangeven naar welke e-mailadres de fout/error gestuurd 
  wordt.    $headers .= "Reply-To: jouw_naam <reply@jouw_site.nl>
"; Deze header zorgt ervoor dat als ontvangers een reply terug willen sturen naar 
  jou, dat hun reactie naar dit adres wordt terug gestuurd.   $headers .= "Cc: birthdayarchive@example.com
"; Deze header zorgt ervoor dat er een Cc. wordt toegevoegd. Cc is een copy (Carbon 
  Copy) van het verstuurde mailtje. $headers .= "Bcc: birthdaycheck@example.com
"; Deze header zorgt ervoor dat er een Bcc. wordt toegevoegd. Als je bij Bcc een 
  emailadres invult, dan kan niemand zien dat u naar die persoon een copy van 
  het mailtje heeft verstuurd. Bcc staat voor Blind Carbon Copy. Er zijn nog veel meer headers, maar dit zijn de belangrijkste om te weten. Nu 
gaan we het even toepassen in ons formuliertje. 
   
    |   <?php if (IsSet($_POST['submit']))
 {
 $naam_ontvanger = 
        $_POST['naar_naam'];
 $email_ontvanger 
        = $_POST['naar_emailadres'];
 
 $naam_verzender = 
        $_POST['van_naam'];
 $email_verzender 
        = $_POST['van_emailadres'];
 
 $onderwerp = 
        $_POST['onderwerp'];
 $bericht_verzender 
        = $_POST['bericht_verzender'];
 
 
 $headers = 
        "From: ".$naam_verzender." 
        <".$email_verzender.">
";
 $headers .= 
        "MIME-Version: 1.0
";
 $headers .= 
        "Content-type: text/html; charset=iso-8859-1
";
 $headers .= 
        "Return-Path: Mail-Error <error@mijnsite.nl>
";
 $headers .= 
        "Reply-To: ".$naam_verzender." 
        <".$email_verzender.">
";
 $headers .= 
        "Bcc: ".$email_verzender."
";
 
 
 
 $bericht = 
        "
 Beste ".$naam_ontvanger.",
 
 ".$naam_verzender." 
        heeft jou een berichtje gestuurd. Hieronder is zijn berichtje te lezen.
 
 --------bericht--------
 ".$bericht_verzender."
 --------bericht--------
 
 mvg,
 Sitemasters.be
 ";
 
 $bericht = 
        nl2br($bericht);
 mail($email_ontvanger, 
        $onderwerp, 
        $bericht, $headers);
 }
 else
 {
 ?>
 <form action="" 
        method="post">
 Naam ontvanger: <input 
        type="text" name="naar_naam"><br />
 Email ontvanger: 
        <input type="text" name="naar_emailadres"><br /><br />
 Naam verzender: <input 
        type="text" name="van_naam"><br />
 Email verzender: 
        <input type="text" name="van_emailadres"><br /><br />
 Onderwerp: <input 
        type="text" name="onderwerp"><br />
 bericht:<br />
 <textarea name="bericht_verzender"></textarea>
 <br /><br 
        />
 <input type="submit" 
        name="submit" value="versturen">
 </form>
 <?php
 }
 ?>
 |  Nu moet je goed opletten op 1 ding. Omdat wij van ons formulier een HTML-formulier 
  hebben gemaakt, worden alle enters niet meer mee geteld, wat ervoor zorgt dat 
  we alle tekst achter elkaar aan krijgen. Daarom heb ik onder het bericht een 
  nl2br 
  toegevoegd.
  top 4. Error
 
  Het kan gebeuren dat als je, jouw server niet goed geconfigureerd heb, deze foutmelding krijgt als je een e-mail probeert te versturen:“can't connect to local MySQL server”
 Dit lijkt een zwaar probleem maar het is eigenlijk heel simpel op te lossen. De eerste stap is om je php.ini te openen. Deze kan aanwezig zijn in je windows-map 
  of in je apache-map. Dan zoek (Ctrl + F) je op [mail function]. Daar staat SMTP ergens bij. Het adres erachter verander je met de SMTP gegevens 
  van jouw provider. Bij mij was dit mail.chello.nlAls je jouw server nu opnieuw opstart, dan kun je mail versturen via jouw webserver. 
 
  top 5. Einde
 
  Dit was de (korte) tutorial over de mail-functie alweer. Zoals je ziet is 
  het eigenlijk een hele simpele maar handige functie om te kennen. Als je nog 
  iets mist in deze tutorial dan kun je dat naar mij doorsturen via een Privé 
  Bericht. Als je nog vragen hebt, kun je die stellen op het forum en NIET via 
  een Prive Bericht.
  top 
 |