Ich bin jetzt über etwas gestolpert, dass ich in solchen Warnhinweisen entweder nicht gesehen, oder übersehen habe, und das mich eine Stunde intensiver Debugging-Arbeit gekostet hat.
Ein Script, das bei Register Globals = off lief, machte auf einer anderen Maschine mit der Einstellung = on Unsinn. Ich dachte, ich mach das hier mal öffentlich, damit andere nicht auch reinfallen.
Ich habe eine Variable $id. Diese wird dann gesetzt, wenn ein Kunde sich anmeldet. Diese Variable wollte ich mit
PHP-Code:
session_start();
$_SESSION['id '] = $id;
Auf der anderen Maschine veränderte sich $_SESSION['id '] aber gelegentlich. Durch Ausgabe von print_r($_SESSION) habe ich das Problem auf eine Zeile zurückführen können, in der $id verändert wird. Dieses Neusetzen von $id verändert auch $_SESSION['id']. Ich habe mir dadurch geholfen, dass ich die SESSION-Variable anders benannt habe.
Ich habe mir dann, um auch ganz sicherzugehen, dass ich hier keinem Phantom nachjage, dies Script hier gemacht:
PHP-Code:
<?php
session_start();
$_SESSION['test'] = 123;
$test = 456;
echo 'SESSION = ' . $_SESSION['test'];
?>
So weit so schlecht. Liegt das nun wirklich an register globals = on oder habe ich hier noch mit anderen schlechten Einstellungen zu tun?
Einen Kommentar schreiben: