Ha! Onderstaand script is een anti-injection scriptje. Nou heb ik het probleem dat na verzending de pagina wit blijft en dus geen doorverwijzing naar een webpagina (zelf aan te geven) Weet een van jullie wat er mis gaat in het script?

<?php
// Vul hier uw eigen e-mail adres in.
$ontvanger = "[email protected]";
// Deze code haalt de informatie uit het formulier.
$naam = $_POST['naam']; if (preg_match(' /[\r\n,;\'"]/ ', $_POST['email'])) {
exit('Invalid email address');
} else {
//code to send the mail
$email = $_POST['email'];
} $onderwerp = $_POST['onderwerp']; if (preg_match(' /[\r\n,;\'"]/ ', $_POST['email'])) {
exit('Invalid email address');
} else
$bericht = $_POST['bericht'];
// Dit is voor het e-mail programma dat je kunt zie van wie de mail afkomstig is en dat
// je kunt re- playen op de mail.
$verzender = "From: " . $naam . " <" . $email . ">";
// Dit stukje code verzend het script
mail($ontvanger, $onderwerp, $bericht, $verzender);
// Vul je de link in.
$link = "index.html";
?>
je hebt een mooie link waar je nix mee doet...

header("location:index.html");
mail($ontvanger, $onderwerp, $bericht, $verzender); vervangen met:

if(mail($ontvanger, $onderwerp, $bericht, $verzender))
{
header('Location: '.$link);
}
else
{
echo 'Kon mail niet verzenden';
}

En de regel $link = "index.html"; moet daarboven ipv daaronder staan.
Wat ik dan doe is een var van de mail functie maken:

dus:

$email = mail($ontvanger, $onderwerp, $bericht, $verzender);

en dan een true or false eronder:

if ($email == TRUE) {
header("Location: "index.php");
} else {
die("Email kon niet worden verstuurd");
}
ahum, mail is een functie, die geeft een boonlean terug (true of false) niet een array. En je maakt niet een variabele van mail, maar je wijst het resultaat toe aan een variabele. En if($mail) is in principe al genoeg. De vergelijking ($mail == TRUE) levert ook TRUE op, maar dat is dus in weze een beetje dubbelop.

edit: dit is niet meer relevant:
Ow, en het is window.location.href = 'index.php';
jelmer, waar slaat het onderste op,
header("location:locatie");

does just fine
ok bedankt voor de info:

Ik had ergens gelezen dat mail() een voorgeprogrammeerde array is die als functie te gebruiken is.

Idd is $email == TRUE dubbelop, maar het werkt wel.
Dingen die dubbelop zijn werken bijna altijd, maar, tja, ze zijn dubbelop :) Gewoon even dat je het weet, scheelt weer typen.

@Wes: Jeffry had het in zijn opmerking staan, maar hij had zijn post al veranderd (en dat stukje weggehaald) voordat ik mijn stukje had kunnen posten :)

Reageren