Fahrtenbuch genial!
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 27.03.2008, 11:45   #1
TP-Member
 
Registriert seit: Feb 2004
gurkerl macht alles soweit korrekt

Kontaktformular Problem


Hallo!

Ich habe ein Kontaktformular erstellt, das bis vor einiger Zeit eigentlich nie Probleme gemacht hat. Doch sein einigen Monaten gibt es immer wieder Probleme. Z.B. erhält der Absender des Formulars eine Fehlermeldung, trotzdem gelangt das ausgefüllte Formular an den Empfänger. Manchmal wird das versenden zwar als erfolgreich qittiert, jedoch kommt das ausgefüllte Formular nie beim Empfänger an. Die unterschiedlichsten Probleme treten bei verschiedenen Kunden auf, d.h. auf verschiedenen Servern. Ich weiß nicht mehr ein und aus. Und da ich kein PHP-Programmierer bin (das Formular hat mir mal jemand erstellt und ich verändere es nur entsprechend), weiß ich natürlich nicht, wie ich das Formular so optimieren kann, dass keine Probleme mehr auftreten. Kann mir jemand helfen?

Hier ist der Quellcode der mailer.php:

<?

$angaben = "
Reservierungsanfrage:\n
\n
------------------------------------------------------\n
Anreisedatum : $Anreise\n
------------------------------------------------------\n
Abreisedatum : $Abreise\n
------------------------------------------------------\n
Anzahl Einzelzimmer : $Einzelzimmer\n
------------------------------------------------------\n
Anzahl Doppelzimmer : $Doppelzimmer\n
------------------------------------------------------\n
Anzahl Kinder : $Kinder\n
------------------------------------------------------\n
Anrede : $Anrede\n
------------------------------------------------------\n
Nachname : $Nachname\n
------------------------------------------------------\n
Vorname : $Vorname\n
------------------------------------------------------\n
Firma : $Firma\n
------------------------------------------------------\n
Strasse : $Strasse\n
------------------------------------------------------\n
PLZ, Ort : $Ort\n
------------------------------------------------------\n
Land : $Land\n
------------------------------------------------------\n
Telefon : $Telefon\n
------------------------------------------------------\n
Fax : $Fax\n
------------------------------------------------------\n
E-Mail : $Mail\n
------------------------------------------------------\n
Anliegen : $Anliegen\n
------------------------------------------------------\n
";

if (($Anreise =="") || ($Abreise =="") || ($Einzelzimmer =="") || ($Doppelzimmer =="") || ($Nachname =="") || ($Telefon =="") || ($Mail == ""))
{
include "http://www.hoteldomain.de/reservierung_error.html";
}
else
{
if ($Vorname != "") {
mail ("hotel@hoteldomain.de","Reservierungsanfrage",$angaben,"From: " . $Vorname . " " . $Nachname . " <" . $Mail . ">");
} else {
mail ("hotel@hoteldomain.de","Reservierungsanfrage",$angaben,"From: " . $Nachname . " <" . $Mail . ">");
}
include "http://www.hoteldomain.de/reservierung_gesendet.html";
}

?>
gurkerl ist offline   Mit Zitat antworten


Alt 27.03.2008, 12:46   #2
TP-Veteran
 
Benutzerbild von alexf812
 
Registriert seit: Sep 2004
alexf812 macht alles soweit korrekt
schreib doch am besten erstmal überall $_POST['Anreise'], $_POST['Abreise'] usw.... jeweils für die ganzen Variablen.
Ich hatte auch mal ein uralt-script für nen mailer bekommen und es ging nix, da die Variablen auch einfach nur so drinstanden wie bei dir jetzt... danach hat es geklappt.
alexf812 ist offline   Mit Zitat antworten
Alt 27.03.2008, 13:22   #3
TP-Moderator
 
Benutzerbild von Rizzo
 
Registriert seit: Aug 2004
Ort: Kaiserslautern
Rizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine User
Hallo gurkerl,

auch wenn danach nicht gefragt wurde, muß ich Dir sagen, dass das kein Formmailer ist, sondern eine Krankheit. Das Script sollte, so wie es ist, überhaupt nicht in's Web gestellt werden, weil es eine Spamschleuder und eine Einladung an Spamversender ist.
Schau Dir doch bitte mal Threads wie z.B. diesen an, um zu erkennen welche Gefahren von einem Script wie diesem ausgehen können.

Im Scripts Brett findest Du wesentlich ausgereiftere Lösungen, wie etwa diese, die man mit etwas Know-how auch sehr leicht um weitere Felder erweitern kann. Ansonsten gibt es hier im Forum auch einen Workshop zum erstellen eines Formmailer.
Rizzo ist gerade online   Mit Zitat antworten
Alt 28.03.2008, 10:32   #4
TP-Member
 
Registriert seit: Feb 2007
Ort: Pirna
litterauspirna macht alles soweit korrekt
Ich tippe mal das register_globels off gestellt ist.

Dann müssten deine Variablen so aussehen $anrede = $_POST['anrede'];
Auserdem solltest du gründlicher prüfen was in deine Textfelder eingegeben wird. Und ich empfehle ein captcha einzu bauen
litterauspirna ist offline   Mit Zitat antworten
Alt 28.03.2008, 12:21   #5
TP-Member
 
Registriert seit: Feb 2004
gurkerl macht alles soweit korrekt
Hallo!

Oh oh oh. Da muss ich mich wohl mal intensiver damit beschäftigen.
Aber als Zwischenlösung werde ich mal das mit den Variablen versuchen, was ihr gemeint habt.

Nachdem ich ja nur Laie bin eine blöde Frage:
Betrifft das alle vorkommenden Variablen im Code?
D.h. muss ich oben in der Auflistung z.B. statt $Anreise\n demnach $_POST['Anreise'] schreiben und unten bei if auch statt ($Anreise =="") nun ($_POST['Anreise'] =="") schreiben?
gurkerl ist offline   Mit Zitat antworten
Alt 28.03.2008, 12:27   #6
TP-Moderator
 
Benutzerbild von Rizzo
 
Registriert seit: Aug 2004
Ort: Kaiserslautern
Rizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine User
Alle.
Dazu solltest Du auch <?php ?> benutzen und nicht die Kurzschreibweise <? ?>
Manche Server unterstützen das nicht und dann laufen Scripts nicht.
Rizzo ist gerade online   Mit Zitat antworten
Alt 28.03.2008, 13:54   #7
TP-Member
 
Registriert seit: Feb 2004
gurkerl macht alles soweit korrekt
OK, danke Rizzo.
Du meinst also oben:
<?php

und unten dann:
?>


Und natürlich auch allen anderen ein dickes Dankeschön!
gurkerl ist offline   Mit Zitat antworten
Alt 28.03.2008, 15:05   #8
TP-Member
 
Registriert seit: Feb 2004
gurkerl macht alles soweit korrekt
Also ich habe es jetzt so abgeändert:

<?php

$_POST['angaben'] = "
Reservierungsanfrage (englischsprachige Seite):\n
\n
------------------------------------------------------\n
Anreisedatum : $_POST['Anreise']
------------------------------------------------------\n
Abreisedatum : $_POST['Abreise']
------------------------------------------------------\n
Anzahl Einzelzimmer : $_POST['Einzelzimmer']
------------------------------------------------------\n
Anzahl Doppelzimmer : $_POST['Doppelzimmer']
------------------------------------------------------\n
Anzahl Kinder : $_POST['Kinder']
------------------------------------------------------\n
Anrede : $_POST['Anrede']
------------------------------------------------------\n
Nachname : $_POST['Nachname']
------------------------------------------------------\n
Vorname : $_POST['Vorname']
------------------------------------------------------\n
Firma : $_POST['Firma']
------------------------------------------------------\n
Strasse : $_POST['Strasse']
------------------------------------------------------\n
PLZ, Ort : $_POST['Ort']
------------------------------------------------------\n
Land : $_POST['Land']
------------------------------------------------------\n
Telefon : $_POST['Telefon']
------------------------------------------------------\n
Fax : $_POST['Fax']
------------------------------------------------------\n
E-Mail : $_POST['Mail']
------------------------------------------------------\n
Anliegen : $_POST['Anliegen']
------------------------------------------------------\n
";

if (($_POST['Anreise'] =="") || ($_POST['Abreise'] =="") || ($_POST['Einzelzimmer'] =="") || ($_POST['Doppelzimmer'] =="") || ($_POST['Nachname'] =="") || ($_POST['Telefon'] =="") || ($_POST['Mail'] == ""))
{
include "http://www.hoteldomain.de/reservierung_error_E.html";
}
else
{
if ($Vorname != "") {
mail ("hotel@hoteldomain.de","Reservierungsanfrage",$_POST['angaben'],"From: " . $_POST['Vorname'] . " " . $_POST['Nachname'] . " <" . $_POST['Mail'] . ">");
} else {
mail ("hotel@hoteldomain.de","Reservierungsanfrage",$_POST['angaben'],"From: " . $_POST['Nachname'] . " <" . $_POST['Mail'] . ">");
}
include "http://www.hoteldomain.de/reservierung_gesendet_E.html";
}

?>


--> Aber er schreibt mir, wenn ich das Formular wegschicke folgende Meldung: Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /www/htdocs/w00675ce/kunden/mailer_hoteldomain_e.php on line 7


Ich weiß nicht ob es wichtig zu wissen ist, aber ich habe die PHP Datei nicht auf den Server des Kunden sondern auf meinem Server ausgelagert, weil der Server des Kunden kein PHP unterstützt.
gurkerl ist offline   Mit Zitat antworten
Alt 28.03.2008, 15:52   #9
TP-Veteran
 
Registriert seit: May 2006
marc22 bringt sich richtig einmarc22 bringt sich richtig ein
1. Nur die Variablen, die aus dem Formular kommen, sond $_POST-Variablen, der Rest bleibt, wie er ist.
2.Du musst für die Variablen, die in dem String stehen, diesen unterbrechen.

PHP-Code:
//statt
$_POST['angaben'] = "
Reservierungsanfrage (englischsprachige Seite):\n
\n
------------------------------------------------------\n
Anreisedatum : $_POST['Anreise']
------------------------------------------------------\n
..."
;

//so hier:
$angaben"
Reservierungsanfrage (englischsprachige Seite):\n
\n
------------------------------------------------------\n
Anreisedatum : "
.$_POST['Anreise']."
------------------------------------------------------\n
..."

Mit den anderen analog

Ich würde Dir aber auch empfehlen, eine Opensource-Mailer zu benutzen... Das kostet zwar vielleicht etwas Einarbeitungszeit, aber es ist sicherer und hat meist mehr Funktionen..

P.S.: Bitte den Code mit \[php\]...[/\php\] posten (ohne \)
__________________
...Meine Meinung

1984
marc22 ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Kontaktformular Problem Kontaktformular Problem
« RegEx Krise | Captcha erneuern »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:58 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67