Problem mit post
Michy
- php
Hallo zusammen
ich habe ein Problem.
Ich habe vor ein paar Wochen ein Formmail geschrieben mit "get".
jetzt habe ich eins mit "post" geschrieben, da das das übliche für ein Mail mit PHP ist.
Aber es will nicht funktionieren.
Hier ist das Formular:
http://ratnaweera.no-ip.com/~michael/PHP/Tabelle_post.htm
Die PHP-Datei habe ich zur Ansicht in eine .txt datei getan:
http://ratnaweera.no-ip.com/~michael/PHP/Mail_uebergabe_post.txt
Gruss Michy
Hi,
Aber es will nicht funktionieren.
was will nicht funktionieren?
ciao
romy
Hy
was will nicht funktionieren?
Sorry, dass ich das nicht hingeschreiben habe.
Es gibt die Information aus, die ich bei "die()" definiert habe (im PHP-Script)
Also es wird gar nicht verschickt.Bzw die Formulareingaben.
Ich bekomme einfach ein leeres Email.
Hilft dir das weiter?
Gruss Michy
Hi
das muss ja nichts mit dem Post zu tun haben.
Lass Dir alle Variablen ausgeben, und schau ob überhaupt alles ankommt
echo "<pre>".var_dump($_POST)."</pre>";
Lass Dir alle von Dir generierten Strings ausgeben
Gibt es irgendwelche Besonderheiten?
ciao
romy
Hy
Ich werde mal eure Tipps anschauen.
Danke
Michy
Es gibt die Information aus, die ich bei "die()" definiert habe (im PHP-Script)
Also es wird gar nicht verschickt.Bzw die Formulareingaben.
Ich bekomme einfach ein leeres Email.
Ja, was denn nun? Entweder schlägt mail() fehl und springt die() an oder mail() funktioniert, verschickt aber keinen Inhalt. In letzterem Fall solltest Du -wie romy bereits geschrieben hat- erstmal den Inhalt der Variablen prüfen. Ansonsten ist die erste Anlaufstelle die Fehlermeldung, die mail() ausspuckt oder, falls da nichts kommt, der Betreiber Deines Servers, denn auf die Interna Des Mailsystems hast Du keinen Zugriff (bei heutigen Hostern wohl eher: solltest keinen haben ;).
Was Du davon mal abgesehen ganz dringenst ändern solltest, ist die Angabe der Empfängeradresse im Formular. Im Prinzip könnte momentan jeder x-beliebige Spammer sekündlich dutzend- bis hundertweise Mails über Dein Formular absetzen.
Gruß,
soenk.e
Hallo,
2 Hinweise zu deinem Mailformular:
Benutze besser $_POST[] statt HTTP_POST_VARS[] ab PHP 4.2
Dein Formular kann klasse für Spam mißbraucht werden, da der Empfänger nicht festgelegt ist, das solltest du ändern.
Gruß,
Henning
Hy
- Benutze besser $_POST[] statt HTTP_POST_VARS[] ab PHP 4.2
Danke
aber das ist nicht das Problem. Ich hatte es vorher so, aber es ging nicht.
- Dein Formular kann klasse für Spam mißbraucht werden, da der Empfänger nicht festgelegt ist, das solltest du ändern.
Das stimmt, aber ich habe das aus folgendem Grund so gemacht.
Es gibt etwa 15 Leute an die man ein Email schreiben kann.
Dann kann ich nur auf der HTML seite die Adresse devinieren.
Gibt es sonst eine Methode?
Ich könnte eine Variabel übergeben den Namen und so mit einer if Abfrage die Email-adresse ermitteln.(Laut gedacht :-) )
Gruss Michy
Hallo,
Hy
- Benutze besser $_POST[] statt HTTP_POST_VARS[] ab PHP 4.2
Danke
aber das ist nicht das Problem. Ich hatte es vorher so, aber es ging nicht.
$_POST ist zukunftssicherer und hat ein paar Vorteile, aber egal.
- Dein Formular kann klasse für Spam mißbraucht werden, da der Empfänger nicht festgelegt ist, das solltest du ändern.
Das stimmt, aber ich habe das aus folgendem Grund so gemacht.
Es gibt etwa 15 Leute an die man ein Email schreiben kann.
Dann kann ich nur auf der HTML seite die Adresse devinieren.
Gibt es sonst eine Methode?Ich könnte eine Variabel übergeben den Namen und so mit einer if Abfrage die Email-adresse ermitteln.(Laut gedacht :-) )
Schreibe alle erlaubten E-Mail Addressen in ein Array und überprüfe die Variable daraufhin. Ist sie nicht im Array wird ein Defaultwert verwendet oder die Mail nicht abgeschickt.
Gruß,
Henning