Foros del Web » Programando para Internet » PHP »

$GLOBALS xq no funciona en otras paginas??

Estas en el tema de $GLOBALS xq no funciona en otras paginas?? en el foro de PHP en Foros del Web. hola a todos tengo un problema que no logro solucionar, tras ver que tengo la variable de php.ini, register_globals=off, he puesto en una pagina: pag1.php ...
  #1 (permalink)  
Antiguo 15/03/2006, 12:24
 
Fecha de Ingreso: julio-2005
Mensajes: 16
Antigüedad: 12 años, 5 meses
Puntos: 0
$GLOBALS xq no funciona en otras paginas??

hola a todos tengo un problema que no logro solucionar, tras ver que tengo la variable de php.ini, register_globals=off, he puesto en una pagina: pag1.php lo siguiente:

session_start();
if (!(isset($GLOBALS['registrado']))){
$registrado="unusuario";
$GLOBALS['registrado'];
print("<script>window.open('pag2.php','vervariable ',target='_blank');</SCRIPT>");
}


Pues bien el codigo de pag2.php, es:

session_start();
if (isset($GLOBALS['registrado'])) {
echo "Hola <b>{".$GLOBALS['registrado']."}</b>";
} else {
echo "No reconoce la variable";
}


siempre se va al else y no reconoce como creada la variable global, esto me pasa cponiedola como $GLOBALS['registrado'] y $_SESSION['registrado']

Por fa please audadmeeee
  #2 (permalink)  
Antiguo 15/03/2006, 13:07
 
Fecha de Ingreso: diciembre-2005
Mensajes: 165
Antigüedad: 12 años
Puntos: 4
Mira si te anda este:
Pag1.php
Código PHP:
<?
session_start
();
if (!isset(
$_SESSION['registrado'])){
$_SESSION['registrado'] = "unusuario";
print(
"<script>window.open('pag2.php','vervariable ',target='_blank');</SCRIPT>");
}
?>
Pag2.php
Código PHP:
<?
session_start
();
if (isset(
$_SESSION['registrado'])) {
echo 
"Hola <b>{".$_SESSION['registrado']."}</b>";
} else {
echo 
"No reconoce la variable";
}
?>
Hasta luego
  #3 (permalink)  
Antiguo 15/03/2006, 13:46
 
Fecha de Ingreso: julio-2005
Mensajes: 16
Antigüedad: 12 años, 5 meses
Puntos: 0
:arriba: :arriba:

Pues si, ,con eso funciona, muchas gracias Cubatron, , lo que no entiendo es por que hay que hacerlo asi y de la forma que yo lo tenia no funcionaba, en fin son las cosas del PHP.

Muchas gacias de verdad un saludo
  #4 (permalink)  
Antiguo 15/03/2006, 15:15
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por fifer01
Pues si, ,con eso funciona, muchas gracias Cubatron, , lo que no entiendo es por que hay que hacerlo asi y de la forma que yo lo tenia no funcionaba, en fin son las cosas del PHP.

Muchas gacias de verdad un saludo
Si, son cosas de PHP ...

$GLOBALS pese su "nombre" pueda indicar otra cosa, no son variables globales para todo script que ejecutes en tu servidor. Sólo tienen "ambito" en la ejecución de tu script Y sólo en ese. PHP al terminar la ejecución de un script "mata" toda variable, conexiones a BBDD (que no sean persistentes) y conexiones en general.

Para "propagar" esos datos por otros scripts puedes usar lo que te han recomendado que se llama "sesiones": www.php.net/session .. Podrías haber usado cookies con el mismo fin (salvando sus diferencias).

Un saludo,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:43.