Hallo Leute,
es hat mir keine Ruhe gelassen, das die farbliche Hinterlegung über die style.css nicht ging und so habe ich noch etwas experimentiert und nun auch den Grund gefunden.
Der Fehler wurde durch diesen Abschnitt Verursacht in dem einige Parameter doppelt überprüft wurden.
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) {
Ich habe die doppelten Abfragen entfernt und nun geht es auch über die style.css .
Ich poste jetzt zur besseren Übersicht hier noch mal alle Änderungen von mir und die komplette contact.php .
Eintrag in der style.css des Designs.
.Fehler_text
{
color: #FF3333;
font-family: Tahoma;
font-size: 11px;
font-weight: bold;
}
.Fehler
{
color: #FF3333;
font-family: Tahoma;
font-size: 14px;
font-weight: bold;
}
Geänderter Eintrag in der include/includes/lang/de.php
'emailcouldnotsend' => '<span class="Fehler_text">Die eMail konnte nicht verschickt werden. Bitte überprüfe ob Du alle Felder ausgefüllt und auch die Antispamzahlen in das danebenliegende Feld übertragen hast.</span>',
'fightusrequest' => "\n\ndie Anfrage kannst du im Adminbereich, als Nextwar übernehmen... Vergiss aber nicht, Kontakt mit dem Clan aufzunehmen ;)",
PS: Hab gemerkt das im IE dieser Code nicht richtig zu sehen war und deshalb noch die nächste Zeile mit reinkopiert.
und die komplette include/contents/contact.php mit allen Einträgen von boehserdavid, den Klassenzuweisungen von mir und ohne die doppelten Abfragen.
<?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 = '';
$fehler = '';
### CONFIG
$mailadr = true; // Check Mailaddress //> true = Yes, false = No
if(isset($_POST['submit'])){
if($_POST['mail'] != ''){
if($mailadr){
$fehler .= ( check_valide_mail($_POST['mail']) == true ? '' : '<span class="Fehler_text">Bitte eine gültige E-Mail Adresse angeben.</span><br>');
}
}else{
$fehler .= '<span class="Fehler_text">Bitte gib Deine E-Mail-Adresse an.</span><br>';
}
if(empty($_POST['name'])){
$fehler .= '<span class="Fehler_text">Bitte gib Deinen Namen an.</span><br>';
}
if(empty($_POST['subject'])){
$fehler .= '<span class="Fehler_text">Bitte gib einen Betreff ein.</span><br>';
}
if(empty($_POST['txt'])){
$fehler .= '<span class="Fehler_text">Bitte gib einen Nachrichtentext ein.</span><br>';
}
if ($fehler == '' AND !empty($_POST['wer']) 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 (strlen($name) <= 30 AND strlen($mail) <= 30
AND strlen($text) <= 5000
AND $mail != $name AND $name != $text AND $text != $mail) {
$subject = "Kontakt: " . $subject;
icmail ($wer,$subject,$text, $name." <".$mail.">");
echo $lang['emailsuccessfullsend'];
$name = '';
$mail = '';
$subject = '';
$wer = '';
$text = '';
} else {
$name = $_POST['name'];
$mail = $_POST['mail'];
$subject = $_POST['subject'];
$wer = $_POST['wer'];
$text = $_POST['txt'];
echo $lang['emailcouldnotsend'].'<br><br>';
}
} else {
$name = $_POST['name'];
$mail = $_POST['mail'];
$subject = $_POST['subject'];
$wer = $_POST['wer'];
$text = $_POST['txt'];
echo '<span class="Fehler">Fehler:</span><br>';
echo $fehler.'<br>';
echo $lang['emailcouldnotsend'].'<br><br>';
}
}
$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);
$design->footer();
?>
Nochmals vielen Dank an den boehserdavid, es funktioniert SUPER(Y) .
Gruß
Uncle-Jo
Zuletzt modifiziert von Uncle-Jo am 27.04.2008 - 22:08:48