FrankieB: Problem mit der Konfiguration von PHP??

Beitrag lesen

Hallo Uhfe,

Da dort nur php 4 enthalten war habe ich auf php5 upgedatet. Hat auch -mit ein wenig Aufwand- funktioniert.
Jetzt habe ich aber ein Problem mit Scripten, die auf dem alten Server einwandfrei laufen (Apache 1.3, php 4)

Soweit so klar? Wenn $ldapuser nicht existiert wird ein Formular angezeigt, wo ldapuser und pass gefüllt werden und per Submit wird das selbe Script wieder ausgeführt und der if-Zweig wird ausgeführt (bzw. sollte ausgeführt werden) Aber genau das tut er nicht. Es wird immer wieder das Formular angezeigt. Wenn ich vor der If-Abfrage $ldapuser und $pass fest vercode funktioniert es einwandfrei.

Habe ich in der PHP oder Apache Konfiguration noch einen Fehler?

Es liegt mit an Sicherheit grenzender Wahrscheinlichkeit daran, daß
register_globals auf off gesetzt ist.

Bis PHP 4x war register_globals standardmässig auf on.

Du hast nun 2 Möglichkeiten:

  1. Alle Skripte umschreiben, damit sie auch unter register_globals off laufen.

z.B.
$ldapuser = $_REQUEST['ldapuser'];

Bzw. anstelle von $_REQUEST $_GET bzw. $_POST.

Und das für _alle_ per GET oder POST übergebenen Variablen in allen Skripten.

  1. In der php.ini (oder auch .htaccess) register_globals auf on stzen. Weniger empfehlenswert, aber als Interimslösung durchaus vertretbar.

Grüsse
Frankie