So, ich habe mir gerade noch einmal die Zeit genommen, das ganze zu überarbeiten. Ich war auch so frei, das ganze etwas übersichtlicher zu machen

Bei der for-Schleife für die Standardbelegung mit der Klasse
inputField war wichtig, dass diese außerhalb der Bedingung
isset($_POST['senden']) steht, da diese sonst ja nur bei Versand des Formulars stattfinden würde. Stattdessen soll sie ja immer stattfinden.
Das mit der
header()-Funktion musste doch wieder anders herum geschrieben werden, da die
mail()-Funktion anscheinend auch für Ausgaben sorgt.
Eigentlich sollte es jetzt aber funktionieren soweit ich das testen konnte. Ich würde dir aber auf Dauer von diesem Script abraten, da es nicht wirklich vom Feinsten ist, vieles ist einfach ziemlich umständlich gelöst und ließe sich vorallem für Anfänger leichter lösen.
- Code: Alles auswählen
<?php
$script = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['SCRIPT_NAME'];
$empfaenger = '...';
$ip = getenv('REMOTE_ADDR');
$betreff = '....';
$arr_daten = array(
'Nachricht' => $_POST['message'],
'Firma' => $_POST['firma'],
'Ansprechpartner' => $_POST['ansprechpartner'],
'Straße' => $_POST['strasse'],
'PLZ Ort' => $_POST['plzort'],
'Telefon' => $_POST['telefon'],
'Fax' => $_POST['fax'],
'E-Mail' => $_POST['email'],
'Imagebroschüre' => $_POST['broschure'],
'Rückruf' => $_POST['rueckruf']
);
$errorFields = array(
'message',
'ansprechpartner',
'strasse',
'plzort',
'email'
);
for($x=0;$x<count($errorFields);$x++)
{
$errorClass[$errorFields[$x]] = 'inputField';
}
function checkEmail($email)
{
$nonascii = "\x80-\xff";
$nqtext = "[^\\\\$nonascii\015\012\"]";
$qchar = "\\\\[^$nonascii]";
$normuser = '[a-zA-Z0-9][a-zA-Z0-9_.-]*';
$quotedstring = "\"(?:$nqtext|$qchar)+\"";
$user_part = "(?:$normuser|$quotedstring)";
$dom_mainpart = '[a-zA-Z0-9][a-zA-Z0-9._-]*\\.';
$dom_subpart = '(?:[a-zA-Z0-9][a-zA-Z0-9._-]*\\.)*';
$dom_tldpart = '[a-zA-Z]{2,5}';
$domain_part = "$dom_subpart$dom_mainpart$dom_tldpart";
$pattern = "$user_part\@$domain_part";
if(!preg_match("/^$pattern$/", $email))
{
return FALSE;
}
else
{
return TRUE;
}
}
if($_GET['check'] == 'TRUE')
{
$errorMessage = '<table width="100%" class="errorTable"><tr><td><b>
Vielen Dank!<br>Ihre Daten wurden weitergeleitet.</td></tr></table><br>';
}
if(isset($_POST['senden']))
{
if($_POST['email_address'] !== '')
{
exit('<h1>Es ist ein Fehler aufgetreten!</h1>Sie haben ein Feld ausgefüllt, das nicht ausgefüllt weden darf.</h1>');
}
else
{
$error = FALSE;
foreach($errorFields as $key => $value)
{
if(empty($_POST[$errorFields[$key]]))
{
$error = TRUE;
$errorClass[$value] = 'errorField';
}
}
}
if($error == TRUE)
{
$errorMessage = '<table width="100%" class="errorTable"><tr><td>
</td><td><b>Achtung!</b><br>
Es ist zu einem Fehler gekommen. Bitte füllen Sie alle
farblich markierten Pflichtfelder aus.</td></tr></table><br>';
}
else
{
header("Location: $script?check=TRUE");
$header .= 'From:' .$email;
$nachricht .= "Folgende Nachricht wurde von $ansprechpartner gesendet:\n\n";
foreach($arr_daten as $key_daten => $value_daten)
{
if(!empty($value_daten))
{
$nachricht .= "$key_daten: $value_daten\n";
}
}
$nachricht .= "IP: ".$ip."\n";
mail($empfaenger, $betreff, $nachricht, $header);
}
}
?>
<!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>
......
</head>
<body>
<div id="wrapper">
<div id="oben"><?php include('header.php'); ?></div>
<div id="menu"><?php include('menu.php'); ?></div>
<div id="content" style="background-image:url(images/kontakt2.jpg); background-repeat:no-repeat; background-position:bottom left;">
<table width="650" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="10"> </td>
<td align="right" valign="middle"><font class="seitentitel">Kontakt</font></td>
<td colspan="4" align="right"><img src="images/kontakt.jpg" alt="Willlkommen" width="374" height="100" /></td>
</tr>
<tr>
<td width="10"> </td>
<td valign="bottom"> </td>
<td width="20"> </td>
<td width="10"> </td>
<td width="353"><p><br />
Wir freuen uns über Ihren Besuch in unserer Agentur oder über einen Gesprächstermin in Ihrem Haus.
<p align="left">Dabei wollen wir Ihnen die Sicherheit geben, dass wir der richtige Partner für Ihre Projekte im Bereich Werbung und Unternehmenskommunikation sind.<br />
<br />
</p>
</p><br />
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><strong>Full-Service Werbeagentur <br />
.....<br />
</strong><br />
......<br />
Fon: (.....0<br />
Fax: (0.....<br />
<a href......</td>
<td><a href="...... target="_blank">Google Maps</a></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table>
<br />
<br />
<table width="300" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><?PHP echo $errorMessage; ?></td>
</tr>
</table>
<br />
<form enctype="multipart/form-data" action="<?PHP echo $script; ?>" method="post">
<dl>
<dt><label>Für Ihre Kommentare, Fragen, Anregungen<font color="#ff0000" size="-1">*</font><br />
<textarea style="font-family: Arial; font-size: 10pt;" class="<?PHP echo $errorClass['message']; ?>" name="message" id="message" cols="40" rows="5"><?PHP echo $_POST['message']; ?></textarea></label>
<br />
<br />
<br />
</dt>
<table width="335" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="117"><label>Firma</label></td>
<td width="218"><label><input name="firma" class="inputField" type="text" id="firma" size="30" value="<?PHP echo $_POST['firma']; ?>" /></label></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Ansprechpartner<font color="#ff0000" size="-1">*</font></td>
<td><label><input name="ansprechpartner" class="<?PHP echo $errorClass['ansprechpartner']; ?>" type="text" id="ansprechpartner" value="<?PHP echo $_POST['ansprechpartner']; ?>" size="30" />
</label></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Straße<font color="#ff0000" size="-1">*</font></td>
<td><label>
<input name="strasse" class="<?PHP echo $errorClass['strasse']; ?>" type="text" id="strasse" value="<?PHP echo $_POST['strasse']; ?>" size="30" />
</label></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td>PLZ, Ort<font color="#ff0000" size="-1">*</font></td>
<td><label>
<input name="plzort" class="<?PHP echo $errorClass['plzort']; ?>" type="text" id="plzort" value="<?PHP echo $_POST['plzort']; ?>" size="30" />
</label></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td height="23">Telefon</td>
<td><label>
<input name="telefon" type="text" class="inputField" id="telefon" value="<?PHP echo $_POST['telefon']; ?>" size="30" />
</label></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Fax</td>
<td><label>
<input name="fax" type="text" class="inputField" id="fax" value="<?PHP echo $_POST['fax']; ?>" size="30" />
</label></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td>E-Mail<font color="#ff0000" size="-1">*</font></td>
<td><label>
<input name="email" class="<?PHP echo $errorClass['email']; ?>" type="text" id="email" value="<?PHP echo $_POST['email']; ?>" size="30" />
</label></td>
</tr>
</table>
<br />
<table width="353" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="8%">
<input type="checkbox" name="broschure" id="broschure" value="<?PHP echo $_POST['broschure']; ?>" /></td>
<td><font style="line-height: 12px;">Bitte senden Sie mir kostenlos und unverbindlich eine Imagebroschüre zu.</font></td>
</tr>
<tr>
<td><input type="checkbox" name="rueckruf" id="rueckruf" value="<?PHP echo $_POST['rueckruf']; ?>" /></td>
<td><font style="line-height: 12px;">Bitte rufen Sie mich zurück.</font></td>
</tr>
</table>
<br />
</dl><label for="email_address"><font color="#FFFFFF">Dieses Feld bitte nicht ausfüllen:</font><input type="text" name="email_address" id="email_address" size="20" /></label>
<!-- Ende der Beispielangaben -->
<p>
<input type="submit" value="Senden" name="senden" />
<input type="reset" value="Zurücksetzen" />
</p>
<p><font color="#ff0000" size="-1">*</font>notwendige Angaben</p>
</form>
<p><br />
<br />
</td>
<td width="4"> </td>
</tr>
</table>
</div>
<div id="footer"><?php include('footer.php'); ?></div>
</div>
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-3531808-1");
pageTracker._initData();
pageTracker._trackPageview();
</script>
</body>
</html>