FlowerDusty
Gebruiker
- Lid geworden
- 4 jan 2009
- Berichten
- 113
Hallo,
ik heb een eigen portfolio website met een contact formulier. Het werkt verder allemaal prima, alleen als je de gegevens hebt ingevuld en op ''verzenden'' klikt, ga je naar een blanco pagina en daar staat dan ''Het bericht is succesvol verzonden!''. Dan ben je dus in principe van mijn website af, of je moet in de browser op de terug knop drukken om weer op mijn website terecht te komen. Ik vind het zelf wat omslachtig, ik zou liever hebben dat er een klein pop upje komt te staan met ''Het bericht is succesvol verzonden!'' waarna je met een kruisje of iets dergelijks het venstertje kan sluiten of iets dat je automatisch terugkeert naar de website (desnoods met een ''klik hier om terug te keren naar de website'' of iets in die trant..). Nou heb ik amper kennis van PHP en ik hoop dat hier iemand een simpele oplossing weet door misschien enkel het script wat aan te passen?
Dit is gewoon mijn formulier (contact.html)
en dit is het PHP script (formulierverzenden.php)
ik heb een eigen portfolio website met een contact formulier. Het werkt verder allemaal prima, alleen als je de gegevens hebt ingevuld en op ''verzenden'' klikt, ga je naar een blanco pagina en daar staat dan ''Het bericht is succesvol verzonden!''. Dan ben je dus in principe van mijn website af, of je moet in de browser op de terug knop drukken om weer op mijn website terecht te komen. Ik vind het zelf wat omslachtig, ik zou liever hebben dat er een klein pop upje komt te staan met ''Het bericht is succesvol verzonden!'' waarna je met een kruisje of iets dergelijks het venstertje kan sluiten of iets dat je automatisch terugkeert naar de website (desnoods met een ''klik hier om terug te keren naar de website'' of iets in die trant..). Nou heb ik amper kennis van PHP en ik hoop dat hier iemand een simpele oplossing weet door misschien enkel het script wat aan te passen?
Dit is gewoon mijn formulier (contact.html)
HTML:
<div id="DivContact">
<form method="post" action="formulierverzenden.php">
<br />
Voornaam *<br />
<input name="voornaam" type="text" size="40" />
<br />
<br />
Achternaam *<br />
<input name="achternaam" type="text" size="40" />
<br />
<br />
E-mail adres *<br />
<input name="email" type="text" size="40" />
<br />
<br />
Bericht *
<br />
<textarea cols="40" rows="12" name="bericht"></textarea>
<br />
<br />
<input type="submit" name="versturen" value="Verstuur bericht" />
<input type="reset" value="Begin opnieuw" />
<h5>Alle velden gemarkeerd met een * zijn verplicht.</h5>
</form>
</div>
en dit is het PHP script (formulierverzenden.php)
PHP:
<?php
$naar = 'marjolijndevries03@gmail.com'; // Waar moet het naartoe?
$onderwerp = 'Contactformulier (marjolijndevries.nl)'; // Het onderwerp van het bericht
// Header instellen, zodat nl2br() werkt
$headers = "MIME-version: 1.0\r\n";
$headers .= "content-type: text/html;charset=utf-8\r\n";
if(isset($_POST['versturen'])) // Als het formulier verzonden is door op de verzend knop te klikken
{
$voornaam = trim($_POST['voornaam']); // Alle overbodige spaties uit het voornaam veld verwijderen
$achternaam = trim($_POST['achternaam']); // Alle overbodige spaties uit het achternaam veld verwijderen
$email = trim($_POST['email']); // Alle overbodige spaties uit het email veld verwijderen
$bericht = trim($_POST['bericht']); // Alle overbodige spaties uit het bericht veld verwijderen
$fout = false; // Om te kijken straks of er wat fout is
if(empty($voornaam)) // Als het voornaam veld niet is ingevuld
{
print '<p>Helaas, het voornaam veld is verplicht maar is nu niet ingevuld!</p>';
$fout = true; // Zorgen dat het script zometeen weet dat er wat fout is
}
if(empty($achternaam)) // Als het achternaam veld niet is ingevuld
{
print '<p>Helaas, het achternaam veld is verplicht maar is nu niet ingevuld!</p>';
$fout = true;
}
if(empty($email)) // Als het email veld niet is ingevuld
{
print '<p>Helaas, het email veld is verplicht maar is nu niet ingevuld!</p>';
$fout = true;
}
if(!filter_var($email, FILTER_VALIDATE_EMAIL)) // Als het email adres niet correct is
{
print '<p>Helaas, het email adres is niet correct!</p>';
$fout = true;
}
if(empty($bericht)) // Als het bericht veld niet is ingevuld
{
print '<p>Helaas, het bericht veld is verplicht maar is nu niet ingvuld!</p>';
$fout = true;
}
if($fout == false) // Als er niks fout is (alles is dus netjes ingevuld)
{
$headers .= 'From: ' . $voornaam . ' ' . $achternaam . '<' . $email . '>'; // Een afzender instellen zodat je kan reageren.
if(mail($naar, $onderwerp, nl2br($bericht), $headers))
{
print '<p>Het bericht is succesvol verzonden!</p>';
}
else
{
print '<p>Helaas, er is wat fout gegaan tijdens het verzenden van het formulier.</p>';
}
}
}
?>