Hallo Liste, ich habe auf einem vlinux-server postfix installiert und kann damit über mail name@domain.com Mails verschicken. Ein php-Skript zum erstellen von Umfragen (phpESP) laüft ebenfalls und verschickt über postfix erfolgreich Daten per Mail. Das folgende Skriot funktionert jedoch nicht auf MEINEM Server, es funktionert aber auf "kommerziellen” Servern, zB bei 1und1: ___________________________________________________ <?php if($abschicken) { if(empty($name) || empty($email) || empty($mitteilung)) { echo "Bitte gehen Sie zurueck und fuellen Sie Sie alle Felder aus!"; } else { while(list($feld,$wert)=each($HTTP_POST_VARS)) { if($feld!="abschicken") { $mailnachricht.=ucfirst($feld).": $wert\n"; } } $mailnachricht.="\nDatum/Zeit: "; $mailnachricht.=date("d.m.Y H:i:s"); $mailbetreff="Kontakt: "; $mailbetreff.=$HTTP_POST_VARS[betreff]; mail("fthiel@gmx.de", $mailbetreff, $mailnachricht, "From: $email"); echo "Vielen Dank für Ihre eMail!"; } } else { echo "Ein Fehler ist aufgetreten."; } ?> _____________________________________________________ da--wie gesagt--dieses Skript bei 1un1 funktioniert, muss es irgendwie an Postfix liegen ? Frank
Frank Thiel wrote:
Ein php-Skript zum erstellen von Umfragen (phpESP) laüft ebenfalls und verschickt über postfix erfolgreich Daten per Mail.
Das folgende Skriot funktionert jedoch nicht auf MEINEM Server, es funktionert aber auf "kommerziellen” Servern, zB bei 1und1:
Aus php.ini zitiert: ; You should do your best to write your scripts so that they do not ;require ; register_globals to be on; Using form variables as globals can easily ;lead ; to possible security problems, if the code is not very well thought ;of. register_globals = Off Wenn das dein komplettes Script war, dann funktioniert es nur mit register_globals = on, denn das Script weist den Variablen $name, $email und $mitteilung keine Werte zu. Benutze doch einfach $name = $_GET['name']; $email = $_GET['email']; $mitteilung = $_GET['mitteilung']; um die Variablen zuzuordnen. Wenn du POST verwendest, musst du natürlich $_POST['variablenname'] verwenden.
_____________________________________________________
da--wie gesagt--dieses Skript bei 1un1 funktioniert, muss es irgendwie an Postfix liegen ?
Die machen es sich einfach und haben "register_globals = On" gesetzt. In den alten Zeiten, als breitbandige private Anbindungen selten waren, da wurde so ein Script gerne von Spammern ausgenutzt, um ihren Müll zu versenden. Heute sind die auch verwöhnt und wollen gleich den gesamten Rechner steuern. (^-°) Sandy
Hallo Sandy Am Sonntag, 12. Dezember 2004 20:50 schrieb Sandy Drobic:
Frank Thiel wrote:
Ein php-Skript zum erstellen von Umfragen (phpESP) laüft ebenfalls und verschickt über postfix erfolgreich Daten per Mail.
Das folgende Skriot funktionert jedoch nicht auf MEINEM Server, es funktionert aber auf "kommerziellen” Servern, zB bei 1und1:
Aus php.ini zitiert:
; You should do your best to write your scripts so that they do not ;require ; register_globals to be on; Using form variables as globals can easily ;lead ; to possible security problems, if the code is not very well thought ;of. register_globals = Off
Wenn das dein komplettes Script war, dann funktioniert es nur mit register_globals = on, denn das Script weist den Variablen $name, $email und $mitteilung keine Werte zu.
wo wird denn register_globals eigestellt ?
Benutze doch einfach
$name = $_GET['name']; $email = $_GET['email']; $mitteilung = $_GET['mitteilung']; um die Variablen zuzuordnen.
Wenn du POST verwendest, musst du natürlich $_POST['variablenname'] verwenden.
_____________________________________________________
da--wie gesagt--dieses Skript bei 1un1 funktioniert, muss es irgendwie an Postfix liegen ?
Die machen es sich einfach und haben "register_globals = On" gesetzt. In den alten Zeiten, als breitbandige private Anbindungen selten waren, da wurde so ein Script gerne von Spammern ausgenutzt, um ihren Müll zu versenden. Heute sind die auch verwöhnt und wollen gleich den gesamten Rechner steuern. (^-°)
Sandy
Aus php.ini zitiert: ^^^^^^^
; You should do your best to write your scripts so that they do not ;require ; register_globals to be on; Using form variables as globals can easily ;lead ; to possible security problems, if the code is not very well thought ;of. register_globals = Off
^^^^^^^^^^^^^^^^^^^^^^^^
wo wird denn register_globals eigestellt ?
AAAAAAAAARGH!!! Das Lesen werde ich dir aber nicht mehr abnehmen!! Wie geschrieben in der php.ini!! Sandy
Am Sonntag, 12. Dezember 2004 23:12 schrieb Frank Thiel:
wo wird denn register_globals eigestellt ?
wenn Du das nicht weißt, bitte gar nicht! sondern pass bitte diesen 10-Zeiler an!
Die machen es sich einfach und haben "register_globals = On" gesetzt. In den alten Zeiten, als breitbandige private Anbindungen selten waren, da wurde so ein Script gerne von Spammern ausgenutzt, um ihren Müll zu versenden. Heute sind die auch verwöhnt und wollen gleich den gesamten Rechner steuern. (^-°)
sehr nett gesagt. Andreas
Hallo Andreas, Am Montag, 13. Dezember 2004 11:10 schrieb Andreas Loesch:
Am Sonntag, 12. Dezember 2004 23:12 schrieb Frank Thiel:
wo wird denn register_globals eigestellt ?
wenn Du das nicht weißt, bitte gar nicht!
ich meine du kannst dir deine abqualifizierenden Kommentare sparen. Das Wesen einer Liste besteht darin, Fragen stellen zu dürfen. Sicherlich sind auch ohne Zweifel "doofe" Fragen dabei. Doch wenn du anfänst das zu bewerten, dann gibt es dafür sicherlich immer unterschiedliche Maßstäbe. Frank
Hallo Frank, hallo Andreas, hallo Leute, Am Montag, 13. Dezember 2004 18:56 schrieb Frank Thiel:
Am Montag, 13. Dezember 2004 11:10 schrieb Andreas Loesch:
Am Sonntag, 12. Dezember 2004 23:12 schrieb Frank Thiel:
wo wird denn register_globals eigestellt ?
wenn Du das nicht weißt, bitte gar nicht!
ich meine du kannst dir deine abqualifizierenden Kommentare sparen. Das Wesen einer Liste besteht darin, Fragen stellen zu dürfen. Sicherlich sind auch ohne Zweifel "doofe" Fragen dabei. Doch wenn du anfänst das zu bewerten, dann gibt es dafür sicherlich immer unterschiedliche Maßstäbe.
Und ich meine, dass der Hinweis von Andreas in diesem Fall nicht böse oder abqualifizierend gemeint war, höchstens etwas kurz angebunden. Auch meine Meinung ist: Wer nicht weiß, was register_globals bewirkt, soll es nicht aktivieren. Punkt. Grund: mit register_globals in Verbindung mit unsauber geschriebenen Scripten hat man schnell eine Sicherheitslücke. Weitere Details finden sich in den Release Notes von PHP 4.2 (IIRC) auf www.php.net, auf http://www.php3.de/manual/security.registerglobals.php und in der PHP-FAQ 11.20. Warum funktionieren meine Formulare nicht? http://www.php-faq.de/q/q-formular-register-globals.html Gruß Christian Boltz -- Die Software soll die Menschen im Netz formen? Da kommen dann Netz- junkies raus, die am Fruehstueckstisch "ftp brotkorb" rufen, und erst nach einem "server ready" eines verstaendnisvollen Tischnachbarn sich zu einem lauten und vernehmlichen "get broetchen" hinreissen lassen. :-) [aus dcoulm]
participants (4)
-
Andreas Loesch
-
Christian Boltz
-
Frank Thiel
-
Sandy Drobic