[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 = '&nbsp;';

// 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
krijg je error, en is de php op de eigen server wel goed ingesteld. welke versie heeft hij? vergelijk anders jouw erkende server met de server van die persoon, die het niet doet.

Reageren