login  Naam:   Wachtwoord: 
Registreer je!
 Reacties op script:
Scripts > PHP > Contact formulieren > Contactformulier, eenvoudig.

Pagina:  

Offline  damwaldnet
Gepost op: 14 februari 2005 - 13:50
HTML interesse



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



deze code heb ik in een .php bestand geplakt (ook al gewijzigt zoals je ziet) maar als ik een e-mail (naar me zelf) verstuur komt alleen de website er maar testaan... niet het e-mail adres, ondwerp en naam...

Zou je dit in het boven staande script kunnen aanpassen?:$

Vr. Groeten Johan, Damwaldnet.nl

Offline  Tuinstoel
Gepost op: 14 februari 2005 - 14:21
PHP expert



Ik zie de fout gewoon niet, vraag het eens op 't forum.

Offline  damwaldnet
Gepost op: 18 februari 2005 - 14:21
HTML interesse



nou tuinstoel... ik heb het in het forum gevraag maar die wisten er geen raad mee... kun je hier de fout uithalen of zou je een ander formulier kunnen maken? dit zou ik zeer op prijs stellen
Hoe zou het er uit moeten te komen zien?
-naam*
-email*
-website
-onderwerp* (een lijstje)
-Bericht*
*= verplicht veld?

Zou dit lukken?:?: 
Ik hoor het graag:p ^^

Offline  Sunrelax
Gepost op: 06 maart 2005 - 21:22
Nieuw lid



leuk scriptje alleen:

* ik krijg als ik iets verzend de mail 2x binnen 

* ik kreeg op een gegeven moment dit als ik iets verzond. (hij verzond het wel, alleen kreeg een warning). Wat houdt dat in? wat kan ik er aan doen? (voeg anders toe op MSN: webmaster@oops-humor.nl

Uw mailtje is verzonden
Warning: Cannot modify header information - headers already sent by (output started at .../..../contactemail.php:8) in .../....//contactemail.php on line 190

:o

Offline  SlashDotCom
Gepost op: 15 mei 2005 - 13:51
Lid



Bij mij wil het formuliertje niet werken.
Ik vul alles in druk op verzenden en ik krijg gewoon mijn index.php te zien.
Kan dit komen omdat ik werk met '?p=contact'?

Offline  Tuinstoel
Gepost op: 15 mei 2005 - 17:36
PHP expert



Ja
<form method="post" action="<?= $_SERVER['PHP_SELF']; ?>">
Moet dan worden
<form method="post" action="?p=contact">

Offline  Cupido
Gepost op: 16 mei 2005 - 22:25
Nieuw lid



Ik ben bezig dit script aan te passen, uit te breiden en te gebruiken. Aldus, ik wil wel posten wat ik uitbreid, zolang ik dit script commercieel mag gebruiken.

Offline  Phixion
Gepost op: 11 augustus 2005 - 17:21
Nieuw lid



er is al text in het bericht vak als ik erin wil typen, en als ik dat verwijder en ik probeer de mail te versturen gaat het niet en krijg ik de error dat er niks in het tekstvak staat

Offline  cracker
Gepost op: 05 november 2005 - 14:53
Onbekend



ARRAYS: '
VARIABELEN EN AL DE REST: "

Offline  Ph070n
Gepost op: 09 januari 2006 - 23:13
Nieuw lid



Citaat:
[I][B]Sunrelax[/B] schreef op 06 Maart 2005 - 21:22[/I]

leuk scriptje alleen:

* ik krijg als ik iets verzend de mail 2x binnen 

* ik kreeg op een gegeven moment dit als ik iets verzond. (hij verzond het wel, alleen kreeg een warning). Wat houdt dat in? wat kan ik er aan doen? (voeg anders toe op MSN: webmaster@oops-humor.nl

Uw mailtje is verzonden
Warning: Cannot modify header information - headers already sent by (output started at .../..../contactemail.php:8) in .../....//contactemail.php on line 190

:o


heb je hem geinclude??

trouwens hier werkt tie perfect!!

Pagina:  

Enkel aanvullende informatie, vragen en antwoorden op vragen zijn welkom.
 
© 2002-2012 Sitemasters.be - Regels - Gehost door: Vircon - Laadtijd: 0.104s