Encontre en la red una aplicación vieja pero muy buena programado bajo PHP4, que usa el register_global=ON.
Como norma de seguridad a partir de PHP4.2.0 viene activada en OFF por defecto y se recomienda dejarla asi.
Ademas la mayoria de las empresas que dan servicio de hosting tienen desactivada el register_global y por lo tanto no va a funcionar.
Que debo hacer, agregar, eliminar o modificar en mis scripts para actualizarlo y que si funcione con la opcion register?global desactivada?
Saludos!!!
Cita de: SpiderNet en 19 Septiembre 2008, 03:26 AM
Encontre en la red una aplicación vieja pero muy buena programado bajo PHP4, que usa el register_global=ON.
Como norma de seguridad a partir de PHP4.2.0 viene activada en OFF por defecto y se recomienda dejarla asi.
Ademas la mayoria de las empresas que dan servicio de hosting tienen desactivada el register_global y por lo tanto no va a funcionar.
Que debo hacer, agregar, eliminar o modificar en mis scripts para actualizarlo y que si funcione con la opcion register?global desactivada?
Saludos!!!
Así es, tienes que declarar las variables.
Saludos
pero... creo que no debería irme codigo por codigo....
Hay un metodo rápido con pocas instrucciones para darle solución rápida?
Saludos!!!
recorre el array $_GET o $_POST con foreach.
//recorrer
foreach($_GET $nombre=>$valor){
$$nombre = $valor; //Guardar $valor en una variable
//Si $nombre vale hola se guardara en $hola
}
No estoy del todo seguro si así era pero la idea iba por ahi. Tambien creo esta la función set() para definir variables. De paso en ese ciclo puedes aprovechar a limpar variables y eso.
Espero te ayude.
Cita de: SpiderNet en 21 Septiembre 2008, 01:01 AM
pero... creo que no debería irme codigo por codigo....
Hay un metodo rápido con pocas instrucciones para darle solución rápida?
Saludos!!!
<?php
// Unregister_globals: unsets all global variables set from a superglobal array
// --------------------
// This is useful if you don't know the configuration of PHP on the server the application
// will be run
// Place this in the first lines of all of your scripts
// Don't forget that the register_global of $_SESSION is done after session_start() so after
// each session_start() put a unregister_globals('_SESSION');
function unregister_globals()
{
if (!ini_get('register_globals'))
{
return false;
}
foreach (func_get_args() as $name)
{
foreach ($GLOBALS[$name] as $key=>$value)
{
if (isset($GLOBALS[$key]))
unset($GLOBALS[$key]);
}
}
}
unregister_globals('_POST', '_GET', '_COOKIE', '_REQUEST', '_SERVER', '_ENV', '_FILES');
?>
Ponlo en algún archivo que está incluido en todos los archivos.
Saludos