PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Apache PHP-Formulardaten per POST kommen nicht an



Benngun
06.08.03, 20:06
ich hab SuSE von 8.0 auf 8.2 neuinstalliert. hab da die eigentlich fertige httpd.conf genommen und kleine Anpassungen wie ServerName oder ServerAdmin gemacht.

wenn ich apache (1.3.27) nun Starte tun es meine PHP Scripte nicht mehr. Sie bekommen ums verecken keine Daten weder im POST noch im GET modus.

ich hänge mal noch die httpd.conf an, aber vieleicht hat ja jemand das Problem schon gelöst bekommen, gefunden habe ich es in 30 Minuten suche jedenfalls nich :(

schonmal danke für eure Hilfe

I-Master
06.08.03, 20:20
Wenn PHP grundsätzlich läuft, also z.B.

<?php
echo "test"
php?>

kannste in der http.conf lange suchen. Da würde ich mir die php.ini mal genauer ansehen.

Normalerweise führt die Standartantwort register_globals = on zur Lösung, aber Du sprichst ja von Get und Post. Mmmmh.

Jinto
06.08.03, 20:38
In PHP wurden die globalen Variablen abgeschafft, weitere Infos unter http://www.php.net

I-Master
06.08.03, 20:40
In PHP wurden die globalen Variablen abgeschafft

alles das stimmt ja nun gar nicht. Die wurden standardmäßig abgeschaltet um die User von $post und $get zu begeistern.

Wenn ich den Threadstarter aber richtig verstanden habem geht das auch nicht. Die globalen Variablen kann man wie gesagt mit

register_globals = on

in der php.ini wieder aktivieren.

Jinto
07.08.03, 00:40
Original geschrieben von I-Master
alles das stimmt ja nun gar nicht.
stimmt. :D


Die wurden standardmäßig abgeschaltet um die User von $post und $get zu begeistern.Es ging um die Problematik, die mit globalen Variablen entstehen können und auch entstanden sind. Alleine durch die Einführung von $_GET und $_POST hat sich ja erstmals an der Problematik nichts bzw. nicht viel geändert. Dieses Feature wurde auch nicht zur Kenntnis genommen, erst als sich der Standardwert änderte gabs auch ein merkliches "Interesse" an Register_Globals

Leider gibt es derzeit keine Pläne die globalen Variablen als deprecated zu erklären und danach aus dem nächsten Release zu löschen.

I-Master
07.08.03, 00:57
auch ein merkliches "Interesse" an Register_Globals

Du meinst ein merkliches Interesse an $_GET und $_POST ?

Halte ich auch nicht für gut, die globalen Variablen abzuschaffen, weil viele Skripte dann nicht mehr laufen würden.

ChengFU
07.08.03, 09:19
Original geschrieben von I-Master
Halte ich auch nicht für gut, die globalen Variablen abzuschaffen, weil viele Skripte dann nicht mehr laufen würden.

<Besserwisser-Mode>Aber das sind doch alles schlecht programmierte Skripte!</Besserwisser-Mode>
Im Ernst, ansich sollte sich register_globals auf die Dauer von selbst abschaffen, denn als ordentlicher Scripter wird man schon aus eigenem Interesse jedes Skript ohne register_globals programmieren.

Gruss, CF

Stage
07.08.03, 10:16
Es gibs auch noch $_REQUEST. Da sind get und post Variablen drin, falls man sich mal nicht festlegen möchte ob man nur get oder post benutzen will, und zu vermeiden später das Scripz von dem einen auf das andere umzustellen.

Was das Array aber nun grossartig von Globalen Variablen unterscheidet, im Sinne der späteren Funktionalität, weiß ich auch nicht so recht. Man hat halt mehr Schreibarbeit.

ChengFU
07.08.03, 16:12
Bei aktiviertem register_globals weisst du nicht, ob z.B. $test von dir selbst gesetzt wurde, per GET oder POST übergeben wurde oder aus der Session gelesen wurde.
Und wenn ich mit Daten arbeite deren Herkunft ich nicht kenne, also evtl. vom User übergebene Daten für selbst-angelegte Daten halte, dann ist das auf jeden Fall ein Risiko für die Anwendung!

Gruss, CF

Benngun
07.08.03, 20:01
THX, das Probem war nicht wie ich gedacht hätte die httpd.conf, sondern das ich die Variablen die ich per POST geschickt hatte direkt zugegriffen hab.
Ab nun werd ich über $_REQUEST gehen müßen, danke für die Hilfe