Autor |
Nachricht |
ruf-sos
Threadersteller
Dabei seit: 26.01.2006
Ort: München
Alter: 44
Geschlecht:
|
Verfasst Fr 25.04.2008 11:49
Titel php formular problem |
|
|
Hey Leute!
hab folgendes Problem: Ich verwende PHP zum Versenden eines E-Mail Formulars, was soweit auch wunderbar funktioniert. Alle Formularfelder werden übertragen, E-Mail kommt fein säuberlich an, NUR:
unter den Daten in der E-Mail steht folgender Kram:
[quote]
__utma: 254387694.1203133102.1208116360.1208116350.1209216360.1
__utmb: 254387694
__utmc: 254387694
__utmz: 254387694.1209216360.2.3.utmccn=(direct)|utmcsr=(direct)|utmcmd=(none)
[/quote]
Wenn ich meinen Browser Cache vor dem Versenden des Formulars lösche, kommen diese Zeichenketten nicht, leere ich ihn nicht, dann ist er wieder da. Ist das ein Cookie Problem? Bei Google fand ich einen Hinweis, dass zum Beispiel Google-Analytics-Scripte Cookies setzen, die eine PHP Datei irgendwie mitschickt! Aber mir kommt das sehr seltsam vor, hat jemand eine Idee oder Lösung für mich? Ich hab hier sonst leider nichts zu diesem Thema gefunden und Google konnte mir auch nicht helfen. HELFT MIR! DANKE!
|
|
|
|
|
Snifferdog
Dabei seit: 08.03.2007
Ort: Düsseldorf
Alter: 35
Geschlecht:
|
Verfasst Fr 25.04.2008 12:10
Titel
|
|
|
Hey ...
also die Cookies UTM... sind in der Regel von Google Analytics wie du schon erkannt hast.
Allerdings kann ich nicht so direkt was dazu sagen wieso du solche Anhänge in deinem Formmailer hast...
es wäre denke ich ganz gut wenn du dein Script .. oder zumindest Teile des Scripts postest, damit man mal schaun
könnte woran es möglicherweise liegt.
Gruß
|
|
|
|
|
Anzeige
|
|
|
ruf-sos
Threadersteller
Dabei seit: 26.01.2006
Ort: München
Alter: 44
Geschlecht:
|
Verfasst Fr 25.04.2008 12:26
Titel
|
|
|
hier mein PHP Script:
<?php
$Empfaenger = "info@xxxxxxxx.de";
if($_REQUEST['Send'])
{
if(empty($_REQUEST['Name']) || empty($_REQUEST['Telefon']) || empty($_REQUEST['Nachricht']))
{
echo"Bitte gehen Sie <a href=\"javascript:history.back();\">zurück</a> und füllen Sie alle Felder aus!";
}
else
{
$Mailnachricht = "Eintrag aus dem Internetformular: \n\n";
while(list($Formularfeld, $Wert)=each($_REQUEST))
{
if($Formularfeld!="Send")
{
$Mailnachricht .= $Formularfeld.": ".$Wert."\n";
}
}
$Mailnachricht .= "\nDatum/Zeit: ";
$Mailnachricht .= date("d.m.Y H:i:s");
$Mailbetreff = "Eintrag aus dem Rueckruf Formular ";
$Mailbetreff .= $_REQUEST['Betreff'];
mail($Empfaenger, $Mailbetreff, $Mailnachricht, "From: ".$_REQUEST[Callbackformular]);
}
}
else
{
echo"Ein Fehler ist aufgetreten. Bitte gehen Sie auf diese <a href=\"kontaktformular.php\">Seite</a>.";
}
?>
Ich kann keinen Hinweis finden, vielleicht bin ich aber zu blöd! Aber schon mal Danke Sniffer!
|
|
|
|
|
Pixelpole
Dabei seit: 25.10.2004
Ort: Trier
Alter: 37
Geschlecht:
|
Verfasst Fr 25.04.2008 13:02
Titel
|
|
|
anstatt von REQUEST GET ODER POST verwenden.
//wobei ich echt nich wissen will wann du dir diesen Code irgendwo kopiert hast....
Zuletzt bearbeitet von Pixelpole am Fr 25.04.2008 13:03, insgesamt 1-mal bearbeitet
|
|
|
|
|
rob
Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht:
|
Verfasst Fr 25.04.2008 23:36
Titel
|
|
|
Zitat: | anstatt von REQUEST GET ODER POST verwenden. |
Ja, unbedingt.
Code: | echo"Bitte gehen Sie <a href=\"javascript:history.back();\">zurück</a> und füllen Sie alle Felder aus!"; |
Das ist nicht besonders sinnvoll. Warum hier JS einsetzen? Es ist doch bekannt, wie die Seite heißt. Warum nicht einfach einen normalen Link auf Seite setzen?
Es gibt User, die bewußt kein JS einsetzen oder es halt gar nicht können.
Code: | $_REQUEST[Callbackformular] |
Es muß $_REQUEST['Callbackformular'] heißen. Je nachdem wie das error_reporting eingestellt ist, kommt es hier sonst zu einer unschönen Meldung. Du versuchst hier nämlich auf eine nicht definierte Konstante zuzugreifen und nur weil es die nicht gibt, vermutet PHP dann das du das entsprechende Element des assoziativen Arrays $_REQUEST meinst.
Code: | mail($Empfaenger, $Mailbetreff, $Mailnachricht, "From: ".$_REQUEST[Callbackformular]); |
Der Funktion mail() kann man als optionalen Parameter noch zusätzliche Header mitgeben. Das solltest du in jedem Fall auch tun. Du solltest zumindest angeben, welche Zeichenkodierung verwendet wird. Ansonsten mußt der Mailclient raten, welches Charset wohl verwendet werden sollte. Das kann dazu führen, daß Sonderzeichen/Umlaute nicht richtig dargestellt werden. Eigentlich wäre es fast ein Zufallstreffer, wenn die richtig angezeigt werden.
Und vielleicht ist das noch interessant für dich:
http://www.securephpwiki.com/index.php/Email_Injection
http://de.wikipedia.org/wiki/E-Mail-Injektion
|
|
|
|
|
|
|
|
Ähnliche Themen |
Formular-Problem
Formular Problem...
Problem mit PDF Formular
Formular Problem
Hab nen PHP-Formular Problem
PDF Formular Problem
|
|