willem008
Gebruiker
- Lid geworden
- 28 sep 2007
- Berichten
- 792
Goede dag
Ik ben mijn een beetje aan het verdiepen in het beveiligen van een formulier , bij alles wat ik las op internet vroeg ik mij af of ik het wel
goed aanpak, zo niet moet ik er meer werk van maken.
Ik heb nu een simpel formulier op mijn site staan en die wordt via het volgende php script verwerkt.
Mijn vraag is moet ik mij bij deze script zorgen maken ,zoja dan moet ik maatregelen nemen nu het nog kan.
Ik ben mijn een beetje aan het verdiepen in het beveiligen van een formulier , bij alles wat ik las op internet vroeg ik mij af of ik het wel
goed aanpak, zo niet moet ik er meer werk van maken.
Ik heb nu een simpel formulier op mijn site staan en die wordt via het volgende php script verwerkt.
Mijn vraag is moet ik mij bij deze script zorgen maken ,zoja dan moet ik maatregelen nemen nu het nog kan.
PHP:
<?php
if(isset($_POST['email'])) {
// EDIT THE 2 LINES BELOW AS REQUIRED
$email_to = "info@mail.com";
$email_subject = "Bestelling Webwinkel";
function died($error) {
// your error code can go here
echo "Een of meerder velden zijn verkeert invult. ";
echo "<br /><br />";
echo $error."<br /><br />";
echo "Ga aub terug naar het formulier en verander de foute velden.<br /><br />";
die();
}
// validation expected data exists
if(!isset($_POST['first_name']) ||
!isset($_POST['last_name']) ||
!isset($_POST['email']) ||
!isset($_POST['telephone']) ||
!isset($_POST['comments'])) {
died('We are sorry, but there appears to be a problem with the form you submitted.');
}
$first_name = $_POST['first_name']; // required
$last_name = $_POST['last_name']; // required
$email_from = $_POST['email']; // required
$telephone = $_POST['telephone']; // not required
$comments = $_POST['comments']; // required
$error_message = "";
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp,$email_from)) {
$error_message .= '* Fout in E-mail veld.<br />';
}
$string_exp = "/^[A-Za-z .'-]+$/";
if(!preg_match($string_exp,$first_name)) {
$error_message .= '* Fout in woonplaats veld.<br />';
}
if(!preg_match($string_exp,$last_name)) {
$error_message .= '* Fout in straat veld.<br />';
}
if(strlen($comments) < 2) {
$error_message .= '* Vul aub het tekst vak in.<br />';
}
if(strlen($error_message) > 0) {
died($error_message);
}
$email_message = "Form details below.\n\n";
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$email_message .= "First Name: ".clean_string($first_name)."\n";
$email_message .= "Last Name: ".clean_string($last_name)."\n";
$email_message .= "Email: ".clean_string($email_from)."\n";
$email_message .= "Telephone: ".clean_string($telephone)."\n";
$email_message .= "Comments: ".clean_string($comments)."\n";
// create email headers
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);
?>
<!-- include your own success html here -->
<?php
}
?>
Laatst bewerkt door een moderator: