Hallo holz,
Ich will niemandem zu nahe treten. Ich habe hohe Achtung vor dem was Ihr hier leistet. Falsches Forum, weil mein Problem vieleicht hier hin gehört: "HTML, PHP, SQL,...". Ich kann mich aber auch täuschen.
Ich wollte keine fertige Lösung sondern wo in welcher Datei ich Änderungen vornehmen muss. Wenn ich jetzt das Kontaktformular unvollständig ausfülle erhalte ich nicht einmal eine Fehlermeldung. Nur wenn ich vollständig das Formular ausfülle kommt die Meldung "Die E-Mail wurde erfolgreich versendet.". Mein Kontaktformular sieht so aus:
<div id="contakt">
<form action="?contact" method="POST">
<fieldset>
<span class="textfarbe_">
<legend> {_lang_whereyouwrite}</legend>
Bitte wähle Deinen Ansprechpartner durch Markieren aus:<br>
</span>
{EXPLODE}
<ul>
<li><input id="w{KEY}" type="radio" name="wer" value="{KEY}" style="float:left; " />
<label for="w{KEY}">{VAL}</label>
<br style="clear:both; " />
</li>
</ul>
{EXPLODE}
<br />
<label style="float:left; width:100px; "> {_lang_name}</label><input type="text" name="name" value="{name}" maxlength="30"><br /><br />
<label style="float:left; width:100px; "> {_lang_mail}</label><input type="text" name="mail" value="{mail}" maxlength="50"><br /><br />
<label style="float:left; width:100px; "> {_lang_subject}</label><input type="text" name="subject" value="{subject}" maxlength="50"><br /><br />
<label style="float:left; width:100px; "> {_lang_message}</label><textarea cols="50" rows="8" name="txt">{text}</textarea><br />
{ANTISPAM}
<label style="float:left; width:100px; "> </label><input type="submit" value=" Absenden "><br />
</fieldset>
</form>
</div>
und die contakt.php
<?php
# Copyright by: Manuel
# Support: www.ilch.de
defined ('main') or die ( 'no direct access' );
$title = $allgAr['title'].' :: Kontakt';
$hmenu = 'Kontakt';
$design = new design ( $title , $hmenu );
$design->header();
$erg = db_query("SELECT v2,t1,v1 FROM prefix_allg WHERE k = 'kontakt'");
$row = db_fetch_assoc($erg);
$k = explode('#',$row['t1']);
$name = '';
$mail = '';
$subject = '';
$wer = '';
$text = '';
if (!empty($_POST['wer']) AND !empty($_POST['mail']) AND !empty($_POST['txt']) AND !empty($_POST['name']) AND !empty($_POST['subject']) AND chk_antispam('contact')) {
$name = escape_for_email($_POST['name']);
$mail = escape_for_email($_POST['mail']);
$subject = escape_for_email($_POST['subject'], true);
$wer = escape_for_email($_POST['wer']);
$text = $_POST['txt'];
$wero = FALSE;
foreach($k as $a) {
$e = explode('|',$a);
if (md5($e[0]) == $wer) {
$wero = TRUE;
$wer = $e[0];
break;
}
}
if (strpos ($text, 'Content-Type:') === FALSE
AND strpos($text, 'MIME-Version:') === FALSE
AND strpos($mail, '@') !== FALSE AND $wero === TRUE
AND strlen($name) <= 30 AND strlen($mail) <= 30
AND strlen($text) <= 5000
AND $mail != $name AND $name != $text AND $text != $mail) {
$subject = "Anfrage über das Kontaktformular; " . $subject;
if (icmail ($wer,$subject,$text, $name." <".$mail.">")) {
echo '<font size="+1" color="#FF0000">';
echo $lang['emailsuccessfullsend'];
echo '</font>';
} else {
echo '<h1>';
echo 'Der Server konnte die Mail nicht versenden, teilen sie dies ggf. dem Administrator oder Webmaster mit.';
echo '</h1>';
}
$name = '';
$mail = '';
$subject = '';
$wer = '';
$text = '';
} else {
echo '<h3>';
echo $lang['emailcouldnotsend'];
echo '</h3>';
}
}
$tpl = new tpl ( 'contact.htm' );
$tpl->out(0);
$i = 1;
foreach($k as $a) {
$e = explode('|',$a);
if ($e[0] == '' OR $e[1] == '' ) { continue; }
if ($i == 1) { $c = 'checked'; } else { $c = ''; }
$tpl->set_ar_out( array ('KEY' => md5($e[0]), 'VAL' => $e[1], 'c' => $c) , 1 );
$i++;
}
$tpl->set('name', $name);
$tpl->set('mail', $mail);
$tpl->set('subject', $subject);
$tpl->set('text', $text);
$tpl->set('ANTISPAM', get_antispam('contact',100));
$tpl->out(2);
echo '<br /><h2>Kontaktadresse für schriftliche Anträge:</h2><br /><br />';
echo 'Fischerfreunde Haimhausen e.V.<br />';
echo 'Hochstr. 21<br />';
echo '85778 Haimhausen<br />';
$design->footer();
?>
Unvollständig ausgefüllte Mails kommen bei mir dann auch nicht an.
MfG
heinz2