<?PHP
session_start(); // zorg ervoor dat session_start ALTIJD bovenaan ALLES van je pagina staat, anders werkt het niet!
// E-mailadres van de ontvanger
$mail_ontv = 'vriendenvanfestival316@uniteinchrist.nl'; // <<<----- voer jouw e-mailadres hier in!
// Speciale checks voor naam en e-mailadres
if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
$error = array();
// naam controle
if (!empty($_POST['naam']) || !preg_match('/[ a-zA-Z-]$/', $_POST['naam']))
$error[] = '<p>Uw naam mag alleen letters bevatten.</p>';
// e-mail controle
if (function_exists('filter_var') && !filter_var($_POST['mail'], FILTER_VALIDATE_EMAIL))
$error[] = '<p>Uw e-mailadres is niet juist.</p>';
// antiflood controle
if (!empty($_SESSION['antiflood']))
{
$seconde = 20; // 20 seconden voordat dezelfde persoon nog een keer een e-mail mag versturen
$tijd = time() - $_SESSION['antiflood'];
if($tijd < $seconde)
$error[] = '<p>U mag slechts één bericht per ' . $seconde . ' seconde versturen.</p>';
}
if(!isset($_POST['machtiging']))
$error[] = 'U moet de machteging nog checken';
}
// Kijk of alle velden zijn ingevuld - naam mag alleen uit letters bestaan en het e-mailadres moet juist zijn
if (($_SERVER['REQUEST_METHOD'] == 'POST' && ( empty($_POST['bericht'])) || $_SERVER['REQUEST_METHOD'] == 'GET'))
{
if(isset($error)){
foreach( $error as $msg ) {
echo $msg;
}
}
if(!empty($_POST)) {
extract($_POST);
} else {
$naam = '';
$adres = '';
$postcode = '';
$woonplaats = '';
$mail = '';
$bedrag = '';
$rekeningnummer = '';
$bericht = '';
}
// HTML e-mail formlier
echo '<form method="post" action="' . $_SERVER['REQUEST_URI'] . '" />
<p>
<label for="naam">Naam:</label>
<input type="text" class="input" id="naam" name="naam" value="' .htmlspecialchars($naam). '" /><br />
<label for="adres">Adres:</label>
<input type="text" class="input" id="adres" name="adres" value="' .htmlspecialchars($adres). '" /><br />
<label for="postcode">Postcode:</label>
<input type="text" class="input" id="postcode" name="postcode" value="' .htmlspecialchars($postcode). '" /><br />
<label for="Woonplaats">Woonplaats:</label>
<input type="text" class="input" id="woonplaats" name="woonplaats" value="' .htmlspecialchars($woonplaats). '" /><br />
<label for="mail">E-mailadres:</label>
<input type="text" class="input" id="mail" name="mail" value="' .htmlspecialchars($mail). '" /><br />
<label class="margin" for"bedrag">Bedrag:</label>
<input type="radio" id="bedrag" class="submit_formulier" value="3,16 euro p/m" name="bedrag">3,16 euro p/m<br />
<input type="radio" id="bedrag" class="submit_formulier" value="6,32 euro p/m" name="bedrag">6,32 euro p/m<br />
<input type="radio" id="bedrag" class="submit_formulier" value="vrij" name="bedrag"><input type="text" class="bedrag" "id="bedrag" name="bedrag" value="' .htmlspecialchars($bedrag). '" /> euro p/m<br /><br />
<label for="rekeningnummer">Rekeningnummer:</label>
<input type="text" class="input" id="rekeningnummer" name="rekeningnummer" value="' .htmlspecialchars($rekeningnummer). '" /><br />
<label for="bericht">Bericht:</label><br />
<textarea id="bericht" name="bericht" rows="4" style="width: 430px;">' .htmlspecialchars($bericht). '</textarea><br />
<input type="checkbox" name="machtiging" id="cfMachtiging" class="submit_formulier" value="Machtiging" /> Hierbij machtig ik Stichting Festival316 om het aangegeven bedrag af te schrijven van bovengenoemd bankrekeningnummer.</p>
<input type="submit" name="submit" value=" Versturen " />
</p>
</form>';
}
// versturen naar
else
{
// set datum
$datum = date('d/m/Y H:i:s');
$inhoud_mail = "===================================================\n";
$inhoud_mail .= "Ingevulde contact formulier " . $_SERVER['HTTP_HOST'] . "\n";
$inhoud_mail .= "===================================================\n\n";
$inhoud_mail .= "Naam: " . htmlspecialchars($_POST['naam']) . "\n";
$inhoud_mail .= "Adres: " . htmlspecialchars($_POST['adres']) . "\n";
$inhoud_mail .= "Postcode: " . htmlspecialchars($_POST['postcode']) . "\n";
$inhoud_mail .= "Woonplaats: " . htmlspecialchars($_POST['woonplaats']) . "\n";
$inhoud_mail .= "E-mail adres: " . htmlspecialchars($_POST['mail']) . "\n";
$inhoud_mail .= "Bedrag: " . htmlspecialchars($_POST['bedrag']) . "\n";
$inhoud_mail .= "Rekeningnummer: " . htmlspecialchars($_POST['rekeningnummer']) . "\n";
$inhoud_mail .= "E-mail adres: " . htmlspecialchars($_POST['mail']) . "\n";
$inhoud_mail .= "Bericht:\n";
$inhoud_mail .= htmlspecialchars($_POST['bericht']) . "\n\n";
$inhoud_mail .= "Verstuurd op " . $datum . " via het IP adres " . $_SERVER['REMOTE_ADDR'] . "\n\n";
$inhoud_mail .= "===================================================\n\n";
// --------------------
// spambot protectie
// ------
// van de tutorial: http://www.phphulp.nl/php/tutorial/beveiliging/spam-vrije-contact-formulieren/340/
// ------
$headers = 'From: ' . htmlspecialchars($_POST['naam']) . ' <' . $_POST['mail'] . '>';
$headers = stripslashes($headers);
$headers = str_replace('\n', '', $headers); // Verwijder \n
$headers = str_replace('\r', '', $headers); // Verwijder \r
$headers = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $headers)); // Slashes van quotes
$_POST['onderwerp'] = str_replace('\n', '', $_POST['onderwerp']); // Verwijder \n
$_POST['onderwerp'] = str_replace('\r', '', $_POST['onderwerp']); // Verwijder \r
$_POST['onderwerp'] = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $_POST['onderwerp'])); // Slashes van quotes
if (mail($mail_ontv, $_POST['onderwerp'], $inhoud_mail, $headers))
{
// zorg ervoor dat dezelfde persoon niet kan spammen
$_SESSION['antiflood'] = time();
echo '<h1>Het contactformulier is verzonden</h1>
<p>Bedankt voor het invullen van het contactformulier. We zullen zo spoedig mogelijk contact met u opnemen.</p>';
}
else
{
echo '<h1>Het contactformulier is niet verzonden</h1>
<p><b>Onze excuses.</b> Het contactformulier kon niet verzonden worden.</p>';
}
}
?>