PHP-Kontaktformular funktioniert nicht PHP 

Status
Für weitere Antworten geschlossen.

Caddie

Registered +
Registriert
März 2008
Beiträge
57
Servus,

habe testweise eine Webseite online gestellt, die wir ehrlich erworben und unseren Wünschen entsprechend abgeändert haben. Leider funktioniert jedoch das Kontaktformular nicht ... sprich ... es werden keine Mails verschickt und ich weiss nicht wo das Problem liegt ...

Die Seite liegt hier ... Webdesign | Grafikdesign | zweifarbig-media.de

Hier ist der Quelltext der mailform2.php der nicht zu funktionieren scheint.

PHP:
#Mailerversion: PHP 1.0
#Formmail für SWiSH max
# 23.11.2003
#WHERE the WORLD is SWiSH....
#http://swishzone.net



### Abschnitt 1 anpassen der Variablen, die Sie ausfüllen müssen
# Hier Ihren Seitennamen angeben, wird in der eMail eingesetzt
$sitename="zweifarbig-media.de";
#Ihre Absenderadresse - die Die user für Kontakt nutzen sollen
$site_email="webmaster@westend-jena.de";
# an wen die Nachricht des Users geschickt werden soll (kann auch beides gleich sein!)
$empfaenger="webmaster@westend-jena.de";

################# Userdaten sammeln ########### 
// Ip-Addressen u.ä. funktionieren nicht immer, da einige Leute über Proxy's surfen bzw. Firewalls das unterdrücken.
$IP=$HTTP_SERVER_VARS['REMOTE_ADDR'];
$Referer=$HTTP_Server_VARS['Referer'];
$HOST=$HTTP_SERVER_VARS['HTTP_HOST'];
$UA=$HTTP_SERVER_VARS['HTTP_USER_AGENT'];
####Uhrzeit ermitteln
$aktzeit=date("m.d.Y H:i")." Uhr";

# Autoresponder - Mail, die automatisch an den User geschickt wird, nachdem dieser das Formular abgeschickt hat
# Variablen, die durch $str_ anfangen, dürfen nicht verändert werden, da sie aus dem Formular übernommen werden
##Betreff der Nachricht an den festegelegten $empfaenger
$betreff="Danke für Ihre Nachricht auf zweifarbig-media.de!";
##Betreff der Nachricht an den Admin
$adminbetreff=$_REQUEST['str_betreff'];
//str_name ist der Name des Users aus dem Formular SIe können den Text anpassen, aber bitte achten Sie darauf, dass Sie im Text
// keine Anführungsstriche verwenden, bzw. diese \" so schreiben

$text="
Hallo ".$_REQUEST['str_name'].",

Ihre Nachricht wurde an uns versandt. Wir werden uns umgehend bei
Ihnen melden. zweifarbig-media

____________________________________________________________

Sie haben folgende Angaben gemacht:

Betreff : ".$_REQUEST['str_betreff']." 
Email : ".$_REQUEST['str_email']."

Betreff : ".$_REQUEST['str_betreff']."
Telefonnummer: ".$_REQUEST['str_telefon']."

Ihre Nachricht:
".$_REQUEST['str_kommentar']."



Zeit: $aktzeit
MailerVersion: ".$_REQUEST['str_version']."
____________________________________________________________";

//Mail absenden, hier nichts ändern!!
if (mail($_REQUEST['str_email'],"$betreff","$text","From: ".$sitename." "))
{$status_intern=true;
echo "&str_text= Mail1 o&dummy=leer";}
else 
{$status_intern=false;
echo "&str_text= Mail1 x&dummy=leer";}

# Mail, die an den Admin gesendet wird

$admin_text="
____________________________________________________________
Sie haben soeben eine Email von ".$_REQUEST[ 'str_name' ]." erhalten. 
Anbei die Informationen die gesendet wurden:

Absender: ".$_REQUEST[ 'str_name' ]."
Email: ".$_REQUEST[ 'str_email' ]."
Telefonnummer: ".$_REQUEST[ 'str_telefon' ]."



Nachricht:
".$_REQUEST[ 'str_kommentar' ]."

Userinfos
Sender : $IP
Referer : $Referer
Host : $Host
UserAgent : $UA
Mailerversion : ".$_REQUEST[ 'str_version' ]."
____________________________________________________________";

if (mail($empfaenger,$adminbetreff,$admin_text,"From: ".$_REQUEST[ 'str_name' ]." "))
{ $admin_status_intern=true;
echo "&str_text= Mail2 o&dummy=leer";}
else 
{$admin_status_intern=false;
echo "&str_text= Mail2 x&dummy=leer";}


if ($status_intern and $admin_status_intern)
{
echo "&status=ok&dummy=leer"; 
}
else
{
echo "&status=fehler&dummy=leer";

}
?>

Wie zu sehen ist habe ich testweise eine meiner Mailadressen eingetragen, komme nun aber nicht weiter. Es funktioniert einfach nicht. Kann jemand helfen? Hab ich irgendwas vergessen?

Danke und Gruß
Caddie
 
Bekommst du irgendwelche Fehlermeldungen, wenn du versucht eine Mail zu versenden? Könnte hilfreich sein...

Ach und nebenbei... Dein Link funktioniert nicht --> Objekt nicht gefunden...
 
also die zeile

PHP:
if (mail($_REQUEST['str_email'],"$betreff","$text","From: ".$sitename."
sieht was komisch aus... die "" sind da teilweise falsch...

also so

PHP:
if (mail($_REQUEST['str_email'],$betreff,$text,"From: ".$sitename." code]
 
Rein von der Syntax her ist die Zeile aber korrekt...
Die " sind nicht notwendig, aber auch nicht falsch. --> Mail Funktion

Wer den Code allerdings geschrieben hat war nicht sonderlich konsequent... Alle folgenden Beispiele müssten funktionieren:

Original
PHP:
if (mail($_REQUEST['str_email'],"$betreff","$text","From: ".$sitename." "))

Fast ohne "
PHP:
if (mail($_REQUEST['str_email'],$betreff,$text,"From: ".$sitename." "))

Alles in "
PHP:
if (mail($_REQUEST['str_email'],"$betreff","$text","From: $sitename "))
 
Zuletzt bearbeitet:
Also ich denke dass dies die bessere Lösung ist:
PHP:
if (mail($_REQUEST['str_email'],$betreff,$text,"From: ".$sitename." "))
da man Variablen in einem String mit ". und ." eingrenzt.
 
Danke für Eure Tipps ... Werd das Formular wohl mal etwas umstricken, obwohl der Fehler gar nicht beim Formular, sondern bei einer Einstellung bei HostEurope lag ..

Dennoch besten Dank. :bing:
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben Unten