[php]<?php
// Start een sessie
session_start();
// Meld alle fouten
ini_set('display_errors', 1);
error_reporting(E_ALL);
// Vul hieronder jouw e-mail in
$WebMasterMail = '***@***.***';
/*************************************************************
* In het volgend gedeelte worden per veld een class gegeven. *
* class="error" ==> Veld word in een ander kleur getoond *
* class="normal" ==> Veld word normaal getoond *
*************************************************************/
// Reset van errors
$error_name = 'normal';
$error_mail = 'normal';
$error_mess = 'normal';
$error_null = 'normal';
$error = NULL;
$error_message = ' ';
// Standaard waarden voor formulier
$_POST['YourName'] = isset($_POST['YourName']) ? $_POST['YourName'] : NULL;
$_POST['YourCompany'] = isset($_POST['YourCompany']) ? $_POST['YourCompany'] : NULL;
$_POST['YourFunction'] = isset($_POST['YourFunction']) ? $_POST['YourFunction'] : NULL;
$_POST['YourMail'] = isset($_POST['YourMail']) ? $_POST['YourMail'] : NULL;
$_POST['YourSubject'] = isset($_POST['YourSubject']) ? $_POST['YourSubject'] : NULL;
$_POST['YourMessage'] = isset($_POST['YourMessage']) ? $_POST['YourMessage'] : NULL;
$_POST['Reset'] = isset($_POST['Reset']) ? $_POST['Reset'] : NULL;
$_POST['Send'] = isset($_POST['Send']) ? $_POST['Send'] : NULL;
// Er word op reset geklikt
if ($_POST['Reset'] != NULL) {
$_POST['YourName'] = NULL;
$_POST['YourCompany'] = NULL;
$_POST['YourFunction'] = NULL;
$_POST['YourMail'] = NULL;
$_POST['YourSubject'] = NULL;
$_POST['YourMessage'] = NULL;
$_POST['Reset'] = NULL;
$_POST['Send'] = NULL;
}
// Functies laden mail & ip
require_once('configuratie/functions.php');
// Controleer WebMasterMail is ingevuld en bestaat
if ($WebMasterMail == NULL) {
print 'ERROR 404: Deze pagina kan niet getoond worden.';
exit();
}
// Controleer WebMasterMail bestaat
$CheckWebMasterMail = email($WebMasterMail);
if ($CheckWebMasterMail != '1') {
print 'ERROR 404: Deze pagina kan niet getoond worden.';
exit();
}
// Controleer formulier verzonden
if ($_POST['Send'] != NULL) {
require_once('configuratie/functions.php');
// Controleer op lege velden
// Naam geen of minder dan 3 letters
if (strlen($_POST['YourName']) < '3') {
$error_name = 'error';
$error = '1';
}
// Geen e-mail ingevuld
if (strlen($_POST['YourMail']) < '5') {
$error_mail = 'error';
$error = '1';
} else {
// Controleer e-mail bestaat
$check_mail = email($_POST['YourMail']);
if ($check_mail != '1') {
$error_mail = 'error';
$error = '1';
}
}
// Geen bericht of minder dan 3 tekens
if (strlen($_POST['YourMessage']) < '3') {
$error_mess = 'error';
$error = '1';
}
// Er zijn fouten gevonden, meld dit aan de bezoeker
if ($error != NULL) {
$error_message = 'Gelieve de velden in rood opnieuw in te vullen.';
$error_null = 'error';
} else {
// Geen fouten = Verzenden formulier
// Maak e-mail
$bericht = nl2br($_POST['YourMessage']);
$verpakking = stripslashes('<hr />Algemene Info<hr />Naam: '.$_POST['YourName'].'<br />E-mail: '.$_POST['YourMail'].'<br />Bedrijf: '.$_POST['YourCompany'].'<br />Functie: '.$_POST['YourFunction'].'<br />Onderwerp: '.$_POST['YourSubject'].'<hr />Bericht<hr />'.$bericht.'<hr />');
$sending = 'From: '.$_POST['YourName'].'<'.$_POST['YourMail'].'>'."\r\n";
$sending .= 'MIME-Version: 1.0'."\r\n";
$sending .= 'Content-type: text/html; charset=iso-8859-1'."\r\n";
$sending .= 'X-Priority: 3'."\r\n";
$sending .= 'X-MSMail-Priority: High'."\r\n";
$sending .= 'X-Mailer: PHP/'.phpversion();
$sending = stripslashes($sending);
$onderwerp = stripslashes($_POST['YourSubject']);
$email = stripslashes($WebMasterMail);
mail($email, $onderwerp, $verpakking, $sending);
if(!mail($email, $onderwerp, $verpakking, $sending)) {
print 'Er is een fout opgetreden!';
exit;
}
$error_message = 'Bedankt '.$_POST["YourName"].', Uw mail werd verzonden.<br />Wij danken U voor uw intresse!';
}
}
// Vanaf hier gaan we de bezoeker tonen wat er moet getoond worden
// Indien mail werd verzonden bedankt de bezoeker
if ($_POST['Send'] != NULL && $error == NULL) {
$ShowPage = $error_message;
} else {
// Selecteer de selectie die de bezoeker heeft gekozen
$CreateSubject = '';
$Selected = '';
$Subject = '';
$VarSubject = array('Bezoek Vertegenwoordiger','Informatie Displays','Leveringstermijnen','Aanvraag Wachtwoord','Andere Vraag');
foreach ($VarSubject as $Subject) {
if ($_POST['YourSubject'] == $Subject) { $Selected = ' selected="selected"'; } else { $Selected = ''; }
$CreateSubject .= '<option value="'.$Subject.'"'.$Selected.'>'.$Subject.'</option>
';
}
// In alle andere gevallen toon het formulier al dan niet met de foutmelding
$ShowPage = '<form id="form" name="form" method="post" action="">
<div class="'.$error_null.'">'.$error_message.'</div>
<div>Naam:</div>
<div><input type="text" name="YourName" class="'.$error_name.'" value="'.$_POST['YourName'].'"></div>
<div>Bedrijf: (Optioneel)</div>
<div><input type="text" name="YourCompany" class="normal" value="'.$_POST['YourCompany'].'"></div>
<div>Functie:</div>
<div><input type="text" name="YourFunction" class="normal" value="'.$_POST['YourFunction'].'"></div>
<div>E-mail:</div>
<div><input type="text" name="YourMail" class="'.$error_mail.'" value="'.$_POST['YourMail'].'"></div>
<div>Onderwerp:</div>
<div>
<select name="YourSubject">
'.$CreateSubject.'
</select>
</div>
<div><textarea name="YourMessage" id="YourMessage" class="'.$error_mess.'">'.$_POST['YourMessage'].'</textarea></div>
<div><input type="submit" value="Verzenden" name="Send" id="Send"><input type="submit" value="Wissen" name="Reset" id="Reset"></div>
</form>
';
}
// Maak een XHTML-Valid formulier
print '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style>
body {
background-color: #ede0cf;
color: #000000;
margin: 0px;
padding: 0px;
}
div.error {
font-size: 16px;
font-weight: 900;
color: #900;
text-decoration: none;
background-color: #F00;
border: 2px solid #900;
margin: 0px;
padding: 2px;
display: block;
width: 172px;
}
div.normal {
text-decoration: none;
margin: 0px;
padding: 2px;
display: block;
width: 0px;
height: 0px;
}
input.error {
font-size: 16px;
font-weight: 900;
color: #900;
text-decoration: none;
background-color: #F00;
border: 2px solid #900;
margin: 0px;
padding: 2px;
display: block;
width: 172px;
height: 16px;
}
input.normal {
font-weight: normal;
color: #000;
text-decoration: none;
background-color: #FFF;
border: 2px solid #000;
margin: 0px;
padding: 2px;
display: block;
width: 172px;
height: 16px;
}
textarea.error {
font-size: 16px;
font-weight: 900;
color: #900;
text-decoration: none;
background-color: #F00;
border: 2px solid #900;
margin: 0px;
padding: 2px;
display: block;
height: 150px;
width: 172px;
}
textarea.normal {
font-weight: normal;
color: #000;
text-decoration: none;
background-color: #FFF;
border: 2px solid #000;
margin: 0px;
padding: 2px;
display: block;
height: 150px;
width: 172px;
}
</style>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Mailformulier</title>
</head>
<body>
<img src="images/titels/fo.png" alt="Formulier" width="89" height="25" /><br />
'.$ShowPage.'
</body>
</html>
';
?>[/php]
Ik begrijp niet wat er fout gaat:
- Op mijn eigen website word het mailtje verstuurd zoals het hoort
- Op de andere website weer niet
Mijn website is gehost bij een erkende hosting-maatschappij
De andere heeft een eigen server.
Dank bij voorbaat
1.398 views