Denk dat ik ergens toch niet goed heb overgenomen. Dit is nu het volledige script:
<?php
if (!isset($_SESSION)) session_start();
if(!$_POST) exit;
// Enter your name or company name below
$receiver_name = "Aannemingen Dilissen bvba";
// Enter email address below for receiving the form
// All Contact messages will be sent there
$receiver_email = "
[email protected]";
// Enter email subject below
// This will be your message subject
$msg_subject = "Bericht van dilissenbvba.be";
$sendername = strip_tags(trim($_POST["sendername"]));
$senderemail = strip_tags(trim($_POST["senderemail"]));
$sendertel = strip_tags(trim($_POST["sendertel"]));
$sendersubject = strip_tags(trim($_POST["sendersubject"]));
$sendermessage = strip_tags(trim($_POST["sendermessage"]));
$securitycode = strip_tags(trim($_POST["securitycode"]));
/*
========================================
Start server side validation
========================================
*/
$errors = array();
//validate name
if(isset($_POST["sendername"])){
if (!$sendername) {
$errors[] = "Vul u naam in.";
} elseif(strlen($sendername) < 2) {
$errors[] = "Je naam moet minstens 2 karakters bevatten.";
}
}
//validate email address
if(isset($_POST["senderemail"])){
if (!$senderemail) {
$errors[] = "Vul uw email in.";
} else if (!validEmail($senderemail)) {
$errors[] = "Vul een geldig emailadres in.";
}
}
//validate tel
if(isset($_POST["sendertel"])){
if (!$sendertel) {
$errors[] = "Vul je telefoonnr in.";
} elseif(strlen($sendertel) < 8) {
$errors[] = "Het onderwerp moet minstens 8 karakters bevatten.";
}
}
//validate subject
if(isset($_POST["sendersubject"])){
if (!$sendersubject) {
$errors[] = "Vul een onderwerp in.";
} elseif(strlen($sendersubject) < 4) {
$errors[] = "Het onderwerp moet minstens 4 karakters bevatten.";
}
}
//validate message / comment
if(isset($_POST["sendermessage"])){
if (strlen($sendermessage) < 10) {
if (!$sendermessage) {
$errors[] = "Vul een bericht in.";
} else {
$errors[] = "Het bericht moet minstens 10 karakters bevatten";
}
}
}
//validate security captcha
if(isset($_POST["securitycode"])){
if (!$securitycode) {
$errors[] = "Vul de veiligheidscode in.";
} else if (md5($securitycode) != $_SESSION['smartCheck']['securitycode']) {
$errors[] = "De code was niet juist!";
}
}
if ($errors) {
//Output errors in a list
$errortext = "";
foreach ($errors as $error) {
$errortext .= '<li>'. $error . "</li>";
}
echo '<div class="alert notification alert-error">De volgende fouten hebben zich voorgedaan:<br><ul>'. $errortext .'</ul></div>';
} else{
require "PHPMailerAutoload.php";
require "smartmessage.php";
$mail = new PHPMailer();
$mail->isSMTP();
//Enable SMTP debugging
// SMTP::DEBUG_OFF = off (for production use)
// SMTP::DEBUG_CLIENT = client messages
// SMTP::DEBUG_SERVER = client and server messages
$mail->SMTPDebug = SMTP::DEBUG_SERVER;
//Set the hostname of the mail server
$mail->Host = 'smtp.office365.com';
//Set the SMTP port number - likely to be 25, 465 or 587
$mail->Port = 587;
$mail->SMTPSecure = 'tls';
//Whether to use SMTP authentication
$mail->SMTPAuth = true;
//Username to use for SMTP authentication
$mail->Username = '***************';
//Password to use for SMTP authentication
$mail->Password = '*************';
$mail->IsHTML(true);
$mail->From = $senderemail;
$mail->CharSet = "UTF-8";
$mail->FromName = $sendername;
$mail->Encoding = "base64";
$mail->Timeout = 200;
$mail->ContentType = "text/html";
$mail->addAddress($receiver_email, $receiver_name);
$mail->Subject = $msg_subject;
$mail->Body = $message;
$mail->AltBody = "Gebruik een HTML compatibele email client";
echo '<div class="alert notification alert-error">Sorry! Er is iets fout gegaan. Probeer opnieuw!</div>';
echo '<div class="alert notification alert-error">Error: '.$mail->ErrorInfo.'</div>';
// For multiple email recepients from the form
// Simply change recepients from false to true
// Then enter the recipients email addresses
// echo $message;
$recipients = false;
if($recipients == true){
$recipients = array(
"
[email protected]" => "Recipient Name",
"
[email protected]" => "Recipient Name",
);
foreach($recipients as $email => $name){
$mail->AddBCC($email, $name);
}
}
if($mail->Send()) {
echo '<div class="alert notification alert-success">Bedankt, je bericht is succesvol verzonden.</div> ';
} else {
echo '<div class="alert notification alert-error">Sorry! Er is iets fout gegaan. Probeer opnieuw.</div> ';
}
}
// end error array if
// ultimate email validation function
function validEmail($senderemail) {
$isValid = true;
$atIndex = strrpos($senderemail, "@");
if (is_bool($atIndex) && !$atIndex) {
$isValid = false;
} else {
$domain = substr($senderemail, $atIndex + 1);
$local = substr($senderemail, 0, $atIndex);
$localLen = strlen($local);
$domainLen = strlen($domain);
if ($localLen < 1 || $localLen > 64) {
// local part length exceeded
$isValid = false;
} else if ($domainLen < 1 || $domainLen > 255) {
// domain part length exceeded
$isValid = false;
} else if ($local[0] == '.' || $local[$localLen - 1] == '.') {
// local part starts or ends with '.'
$isValid = false;
} else if (preg_match('/\\.\\./', $local)) {
// local part has two consecutive dots
$isValid = false;
} else if (!preg_match('/^[A-Za-z0-9\\-\\.]+$/', $domain)) {
// character not valid in domain part
$isValid = false;
} else if (preg_match('/\\.\\./', $domain)) {
// domain part has two consecutive dots
$isValid = false;
} else if (!preg_match('/^(\\\\.|[A-Za-z0-9!#%&`_=\\/$\'*+?^{}|~.-])+$/', str_replace("\\\\", "", $local))) {
// character not valid in local part unless
// local part is quoted
if (!preg_match('/^"(\\\\"|[^"])+"$/', str_replace("\\\\", "", $local))) {
$isValid = false;
}
}
if ($isValid && !(checkdnsrr($domain, "MX") || checkdnsrr($domain, "A"))) {
// domain not found in DNS
$isValid = false;
}
}
return $isValid;
}
?>
[size=xsmall]
Toevoeging op 11/12/2019 21:16:05:[/size]
Het formulier verzend dus niet