Zitat von
Spider:
Das komische ist, in dem anderen Script, von dem ich sprach, hab ich das genauso gemacht und dort wird nirgendwo register_global aufgerufen und es funktioniert.
register_globals wird nicht aufgerufen. register_globals ist ein Parameter in der php.ini.
Zitat von
Spider:
Warum soll man register_global nicht auf on stellen?
Diese Frage ist im Netz zigfach ausführlich beantwortet. Google einfach mal. Die Erklärungen die Du finden dürftest sind mit Sicherheit alle besser als das was ich jetzt noch zu Tastatur bringen würde.
Nur soviel: Stell Dir folgendes Szenario vor.
Es existiert eine Session-Variable namens "test" und in der
url wird ?test=dingens übergeben.
Welchen Wert beinhaltet nun $test? Den aus der Session oder den des GET-Parameters?
Greift man über $_GET['test'] bzw. $_SESSION['test'] zu ist es eindeutig.
Du hast Dir genau diesen Fallstrick selber eingebaut.
Das hier:
Code:
if ($login) // DAS hier ist nur zum Test
{
echo 'ja';
}
sollte das Problem verdeutlichen. Klar meinst Du in diesem Fall den Wert von "login" aus der Session aber es ist nicht eindeutig. Hängt man "?login=true" an die
url ist der login u.U. überwunden ohne, daß man nach einem pass gefragt wurde.
Also immer über $_SESSION, $_GET, $_POST, etc... zugreifen.
Bis neulich ...