PHP: register_globals
Jeg er ejer af et b-one webhotel. Deres servere kører med "register_globals", og derfor laver det rod i mine koder, når jeg er vant til at køre med "register_globals" slået fra.Jeg oprettede dette spm.:
http://www.eksperten.dk/spm/457677
Der fik jeg udleveret en kode, som burde kunne løse mit problem.
Men det gør koden desværre ikke. Koden er:
function unregister_globals () {
$REQUEST = $_REQUEST;
$GET = $_GET;
$POST = $_POST;
$COOKIE = $_COOKIE;
if ( isset ( $_SESSION ) ) {
$SESSION = $_SESSION;
}
$FILES = $_FILES;
$ENV = $_ENV;
$SERVER = $_SERVER;
foreach (
$GLOBALS as $key => $value ) {
if ( $key != GLOBALS ) {
unset ( $GLOBALS [ $key ] );
}
}
$_REQUEST = $REQUEST;
$_GET = $GET;
$_POST = $POST;
$_COOKIE = $COOKIE;
if ( isset ( $SESSION ) ) {
$_SESSION = $SESSION;
}
$_FILES = $FILES;
$_ENV = $ENV;
$_SERVER = $SERVER;
}
unregister_globals ();
Når jeg kører funktionen på en side som har sessions registreret, eller når jeg forsøger at fjerne sessions, så går siden ned.
Hvad er der galt med koden? Hvordan får jeg løst mit problem?
