login  Naam:   Wachtwoord: 
Registreer je!
 Scripts:

Scripts > PHP > Contact formulieren > Contactformulier, eenvoudig.

Contactformulier, eenvoudig.

Auteur: Tuinstoel - 19 december 2004 - 13:27 - Gekeurd door: Dennisvb - Hits: 81691 - Aantal punten: 4.18 (22 stemmen)




Een eenvoudig contact formulier, html 4.01 en css valid.
Ook zit er een anti-spam van een X aantal minuten bij in, en verder een checkbox waarin je kunt aanvinken of je graag het e-mailtje zelf ook wilt ontvangen.

Veel plezier...

Code:
  1. <?
  2. ////////////////////////////////////////////////
  3. //////// www.sitemasters.be ////////////////////
  4. //////// Door Tuinstoel ////////////////////////
  5. //////// Een eenvoudig mailformuliertje ////////
  6. ////////////////////////////////////////////////
  7.  
  8. ob_start(); // Voor het cookie setten, anders zal dat hoogst waarschijnlijk niet werken.
  9. $cNaam = 'Tuin Stoel'; // Je naam...
  10. $cEmail = 'je@email.nl'; // email waar het heen moet
  11. $cOndPre = 'Emailtje -'; // prefix voor onderwerp
  12. $cOndSuf = '- van mij'; // suffix achter onderwerp
  13. $cSpam = 10; // Anti Spam, X aantal minuten
  14. ?>
  15. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  16. <html>
  17. <head>
  18. <title>Mail Formulier</title>
  19. <style type="text/css">
  20. body, input, textarea
  21. {
  22. font-size: 10pt;
  23. color: #000000;
  24. font-family: Verdana, Arial, Helvetica, sans-serif;
  25. }
  26. input, textarea
  27. {
  28. border: 1px solid black;
  29. background-color: #FEFEFE;
  30. }
  31. </style>
  32. </head>
  33. <body>
  34. <?
  35. if(!empty($_POST['verstuur']))
  36. { // Er is op de knop 'verstuur e-mail' gedrukt...
  37. $pError = ''; // Een begin met de errors als die er zijn
  38. $pI = 0; // Deze telt het aantal erros.
  39. if(strlen($_POST['naam']) < 2)
  40. { $pError .= '- Je hebt je naam niet ingevuld!<br>'; $pI++; }
  41. if(strlen($_POST['email']) < 6 || !ereg('@',$_POST['email']) || !ereg('.',$_POST['email']))
  42. { $pError .= '- Je hebt geen geldig email-adres ingevuld!<br>'; $pI++; }
  43. if(strlen($_POST['onderwerp']) < 3)
  44. { $pError .= '- Je hebt geen geldig onderwerp ingevuld!<br>'; $pI++; }
  45. if(strlen($_POST['bericht']) < 10)
  46. { $pError .= '- Je hebt geen geldig bericht ingevuld!<br>'; $pI++; }
  47.  
  48. if(!empty($pError))
  49. { // Als er dan toch errors zijn..
  50. echo ($pI == 1) ? 'De volgende fout is opgetreden:<br>' : 'De volgende fouten zijn opgetreden:<br>'; // even kijken of het meervoud of enkelvoud is.
  51. echo $pError; // echoën van de error(s)
  52. }
  53. else
  54. {
  55. // uiteindelijk toch mailen :)
  56. $pHeader = "MIME-Version: 1.0\r\n";
  57. $pHeader .= "Content-type: text/html; charset=iso-8859-1\r\n";
  58. $pHeader .= "To: ".$cNaam." <".$cEmail.">\r\n";
  59. $pHeader .= "From: ".$_POST['naam']." <".$_POST['email'].">\r\n";
  60. $website = (!empty($_POST['website'])) ? '<br><br>Website: '.$_POST['website'] : '';
  61. $pBericht = 'Het volgende bericht is gestuurd via het contact formulier:<br><hr><br>'.$_POST['bericht'].$website;
  62. mail($cEmail,$cOndPre.' '.$_POST['onderwerp'].' '.$cOndSuf,$pBericht,$pHeader);
  63.  
  64. if(isset($_POST['usermail']))
  65. { // Als de persoon het vakje 'Ook naar mezelf mailen' heeft aangevinkt...
  66. $pBerichtUser = 'Het volgende bericht heb je verstuurd via contact formulier:<br><hr><br>'.$_POST['bericht'];
  67. mail($_POST['email'],$cOndPre.' '.$_POST['onderwerp'].' '.$cOndSuf,$pBerichtUser,$pHeader);
  68. }
  69.  
  70. echo 'De e-mail is succesvol verzonden!';
  71. setcookie('mailform',1,time()+($cSpam*60)); // cookie zetten tegen spam
  72.  
  73. $pShow = true; // formulier wordt niet weer getoond
  74. }
  75. }
  76. // Kijken of er een waarde moet worden gegeven aan velden...
  77. $pNaam = (isset($_POST['naam'])) ? $_POST['naam'] : '';
  78. $pEmail = (isset($_POST['email'])) ? $_POST['email'] : '';
  79. $pWebsite = (isset($_POST['website'])) ? $_POST['website'] : '';
  80. $pOnderwerp = (isset($_POST['onderwerp'])) ? $_POST['onderwerp'] : '';
  81. $pBericht = (isset($_POST['bericht'])) ? $_POST['bericht'] : '';
  82.  
  83. // kijken of het cookie bestaat, zoja dan wordt het formulier niet getoond.
  84. if(isset($_COOKIE['mailform']))
  85. { $pShow = true; echo 'Je kunt maar eens in de '.$cSpam.' minuten een e-mail versturen!'; }
  86.  
  87. if(!isset($pShow))
  88. { // het formulier als $pShow niet bestaat.
  89. ?>
  90. <form method="post" action="<?= $_SERVER['PHP_SELF']; ?>">
  91. <dl>
  92. <dt><b>Naam:</b> <font color="#999999"><i>(verplicht)</i></font></dt>
  93. <dd><input type="text" name="naam" size="15" value="<?= $pNaam; ?>"></dd>
  94. <dt><b>Email:</b> <font color="#999999"><i>(verplicht)</i></font></dt>
  95. <dd><input type="text" name="email" size="15" value="<?= $pEmail; ?>"></dd>
  96. <dt><b>Website:</b></dt>
  97. <dd><input type="text" name="website" size="15" value="<?= $pWebsite; ?>"></dd>
  98. <dt><b>Onderwerp:</b> <font color="#999999"><i>(verplicht)</i></font></dt>
  99. <dd><input type="text" name="onderwerp" size="15" value="<?= $pOnderwerp; ?>"></dd>
  100. <dt><b>Bericht:</b> <font color="#999999"><i>(verplicht)</i></font></dt>
  101. <dd><textarea name="bericht" cols="40" rows="10"><?= $pBericht; ?></textarea></dd>
  102. <dt><b>Ook naar mezelf mailen:</b></dt>
  103. <dd><input type="checkbox" name="usermail"></dd>
  104. <dt><b>Formulier opties:</b></dt>
  105. <dd>
  106. <input type="submit" value="Verstuur e-mail" name="verstuur"> <input type="reset" value="Wis velden"></dd>
  107. </dl>
  108. </form>
  109. <?
  110. }
  111. ?>
  112. </body>
  113. </html>
Download code! Download code (.txt)

 Stemmen
Niet ingelogd.

 Reacties
Post een reactie
Lees de reacties (36)
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.033s