Ik heb een werkend formulier gemaakt, maar bij het invullen van 'nr' krijg ik de boodschap: Het Nr moet ingevuld worden.
Wat ik invul is bv. 23 bus 6. Wanneer ik alleen "23" of alleen "bus" invul, werkt het naar behoren.
Wat kan fout zijn in de code?
Wat ik invul is bv. 23 bus 6. Wanneer ik alleen "23" of alleen "bus" invul, werkt het naar behoren.
Wat kan fout zijn in de code?
PHP:
<?php
if(isset($_POST['email'])) {
$email_to = "mijn@email.be";
$email_subject = "Mijn Formulier";
function died($error) {
echo "Sommige velden zijn niet ingevuld.<br /><br />";
//echo "De fouten staan hieronder.<br /><br />";
echo $error."<br /><br />";
echo "Ga terug en verbeter de fouten.<br /><br />";
die();
}
// validation expected data exists
if(!isset($_POST['voornaam']) ||
!isset($_POST['naam']) ||
!isset($_POST['straat']) ||
!isset($_POST['nr']) ||
!isset($_POST['postcode']) ||
!isset($_POST['plaats']) ||
!isset($_POST['email']) ||
!isset($_POST['aantal']) ||
!isset($_POST['petitie'])) {
died('Alle velden moeten ingevuld worden');
}
$voornaam = $_POST['voornaam']; // required
$naam = $_POST['naam']; // required
$straat = $_POST['straat']; // required
$nr = $_POST['nr']; // required
$postcode = $_POST['postcode']; // required
$plaats = $_POST['plaats']; // required
$email = $_POST['email']; // required
$aantal = $_POST['aantal']; // not required
$petitie = $_POST['petitie']; // required
$error_message = "";
// $email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
// if(!preg_match($email_exp,$email)) {
// $error_message .= 'Het email adres is niet correct.<br />';
// }
$string_exp = "/^[A-Za-z0-9.'-]+$/";
if(!preg_match($string_exp,$voornaam)) {
$error_message .= 'De voornaam moet ingevuld worden.<br />';
}
if(!preg_match($string_exp,$naam)) {
$error_message .= 'De naam moet ingevuld worden.<br />';
}
if(!preg_match($string_exp,$straat)) {
$error_message .= 'De Straat moet ingevuld worden.<br />';
}
if(!preg_match($string_exp,$nr)) {
$error_message .= 'Het Nr moet ingevuld worden.<br />';
}
if(!preg_match($string_exp,$postcode)) {
$error_message .= 'De Postcode moet ingevuld worden.<br />';
}
if(!preg_match($string_exp,$plaats)) {
$error_message .= 'De Gemeente moet ingevuld worden.<br />';
}
if(!preg_match($string_exp,$aantal)) {
$error_message .= 'Het Aantal inwoners moet ingevuld worden.<br />';
}
if(strlen($error_message) > 0) {
died($error_message);
}
$email_message = "Krottegemsemarkten Petitie\n\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$email_message .= "Petitie: ".clean_string($petitie)."\n\n";
$email_message .= "Naam: ".clean_string($naam)."\n\n";
$email_message .= "Voornaam: ".clean_string($voornaam)."\n\n";
$email_message .= "Adres: ".clean_string($straat)."\n\n";
$email_message .= "Nr: ".clean_string($nr)."\n\n";
$email_message .= "Postnr: ".clean_string($postcode)."\n\n";
$email_message .= "Plaats: ".clean_string($plaats)."\n\n";
$email_message .= "Email: ".clean_string($email)."\n\n";
$email_message .= "Aantal inwoners op dit adres: ".clean_string($aantal)."\n\n";
// create email headers
$headers = 'From: '.$email."\r\n".
'Reply-To: '.$email."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);
header('Location: http://mijnsite.be/bedankt.html');
?>
<?php
}
?>
Laatst bewerkt door een moderator: