Webprofis is een Forum waarin je vragen kunt stellen die webgerelateerd zijn. Heb je vragen over of problemen met je Webpagina, HTML, CSS, Javascript, PHP of andere client of serverside scriptingtalen? Stel ze dan gerust op dit forum.
Op dit forum zijn een aantal vrijwilligers actief die u graag met uw vragen willen helpen en u waar mogelijk een passend antwoord aanbieden.
Hebt u zelf veel ervaring en kennis met betrekking tot het bovenstaande? U bent van harte welkom om uw kennis met anderen te delen!
We hopen dat eenieder op dit Forum een leerzame ervaring mag opdoen.
Team Webprofis
We hopen dat eenieder op dit Forum een leerzame ervaring mag opdoen.
Team Webprofis
aanpassing in een contact box
Ik zoek naar de mogelijkheid dat als ik het bericht krijg (Het bericht is succesvol verzonden)
Dat ik daarin of na 5 seconden doorgelinkt wordt naar een pagina. Of een link erin dat ze terug kunnen naar de vorige pagina/ of een url van een andere site
Dat ik daarin of na 5 seconden doorgelinkt wordt naar een pagina. Of een link erin dat ze terug kunnen naar de vorige pagina/ of een url van een andere site
$naar = 'test@gmail.com'; // Waar moet het naartoe
$onderwerp = test; // tesst
// 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>';
}
}
}
Login of Registreer om te reageren.
Reacties
Uitgaande van bovenstaand script plaasts je deze regel tussen regel 48 en 49 hierboven: Optie 2: linkje dat ze zelf kunnen klikken naar pagina waar je naar toe wilt: (ook tussen regel 48 en 49)
Warning: Cannot modify header information - headers already sent by (output started at /srv/disk5/1989777/www/pagina/verzend/formulierverzenden.php:1) in /srv/disk5/1989777/www/pagina/verzend/formulierverzenden.php on line 49
+ de email komt niet aan.
Mocht je dit script includen ergens midden in bv de index, dan gaat het niet lukken zonder omwegen zoals de andere aangedragen oplossingen.
Er is nog een vieze oplossing die ik eigenlijk niet mag rondstrooien, maar ik zelf gewoon bij de vleet gebruik, en dat is ob_start(); HELEMAAL bovenin de index plaatsen. dit is enkel nodig als je dit script include.
Zijn nog meerdere opties om na enkele seconden een andere pagina aan te roepen auotmatisch:
Direct na de print op regel 48 zet je deze echo erbij:
Ik weet niet of deze php code los van de form staat, anders zou je ook een redirect met de meta tag kunnen uitvoeren: Maar dan moet niet de form onder de php afhandeling staan, anders ben je na 5 seconden al bij google tijdens het invullen
Je script ziet er dan als volgt uit vanaf regel 46: