Ver Mensaje Individual
  #4 (permalink)  
Antiguo 09/01/2004, 12:29
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
El problema de "globalizar" tus variables es que .. un nombre de variable $tal .. podría ser suplantado si usas register_globals a ON donde todas las variables son globales .. así que por ejemplo:

nose.php?variable=valor

en el script PHP seria: $variable (con register_globals a ON) .. A OFF esa directiva se fuerza a que tenga que entrar dicha variable por su método esperado (en el ejemplo del link sería GET).

Si tu haces que $_GET['variable'] sea $variable (o aunque hagas $prefijo_variable .. Si yo veo tu código y averigüo que usas esa sintax .. podría llegar a comprometer la seguridad de tus scripts accediendo (insisto en configuraciones "register_global a ON") segùn lo descrito.

---

El hecho de usar esas funciones como isset() .. o empty() te asegura que la variable esté definida (caso de isset()) y/o definida+valor != NULL,'' (caso de empty()) ...

Si usas configuración de aviso de reportes de errores tipo:

error_reporting(E_ALL);

(al principio de tus scripts .. o bien en una configuración de php.ini en su directiva asociada) ..

Veraras que .. ahí PHP te saltará con un "Notice" avisandote de que tal variable no está definida (caso de un $_GET['variable'] )

----

Las justificaciones que comentas sobre la configuración de "get" .. Te comento que la directiva famosa register_globals si está a ON (para versiones superiores de php a 4.1.0) igual recoge los arrays asociativos $_GET ..etc y funcionaría más seguara la aplicación si lo usases a OFF. Es decir .. para versiones superiores de 4.1.0 en adelante no hay problema de incompatibildad (si hacia abajo).


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.