hab mich jetzt so beholfen:
Datei extras.lib.php folgendes ersetzt:
Code:
// Funktion zum Variablen absichern !
function extra_securevars ($value, $name, $art) {
global $GLOBALS;
// magic_quotes = on?
if (get_magic_quotes_gpc ()) $value = stripslashes ($value);
if ($art == 'GET') $_GET[$name] = $value;
elseif ($art == 'POST') $_POST[$name] = $value;
elseif ($art == 'COOKIE') $_COOKIE[$name] = $value;
elseif ($art == 'SERVER') $_SERVER[$name] = $value;
elseif ($art == 'SESSION') $_SESSION[$name] = $value;
else die ('Fehler in der Variablenabsicherungsfunktion!');
}
durch:
Code:
// Funktion zum Variablen absichern !
function extra_securevars($array){
global $GLOBALS;
foreach($array as $key=>$value) {
if(is_array($array[$key])) {
$result[$key] = extra_securevars($array[$key]);
}
else{
if (get_magic_quotes_gpc ()) $result[$key] = stripslashes ($value);
else $result[$key] = $value;
}
}
return $result;
}
Datei extras.init.php folgendes ersetzt:
Code:
array_walk($_GET, 'extra_securevars', 'GET');
array_walk($_POST, 'extra_securevars', 'POST');
array_walk($_SERVER, 'extra_securevars', 'SERVER');
if (count ($_SESSION) > 0) array_walk($_SESSION, 'extra_securevars', 'SESSION');
durch:
Code:
$_GET = extra_securevars($_GET);
$_POST = extra_securevars($_POST);
$_SERVER = extra_securevars($_SERVER);
if (count ($_SESSION) > 0) $_SESSION = extra_securevars($_SESSION);
bitte aber trotzdem um bugfix, von mir aus auch mit meiner lösung
Resultat (secure) ist das selbe wie vorher, nur das die arrays auch rekursiv durchgegangen werden.
gruß
djghost2001