Foros del Web » Programando para Internet » PHP »

Problemacon variable de sesión

Estas en el tema de Problemacon variable de sesión en el foro de PHP en Foros del Web. Hola: Tengo un problema con una variables de session que me trae de cabeza. He hecho dos paginitas para que lo entendais. La primera es ...
  #1 (permalink)  
Antiguo 23/08/2009, 10:00
 
Fecha de Ingreso: abril-2004
Ubicación: Palma de Mallorca
Mensajes: 24
Antigüedad: 20 años
Puntos: 0
Problemacon variable de sesión

Hola:
Tengo un problema con una variables de session que me trae de cabeza.

He hecho dos paginitas para que lo entendais.

La primera es
<?php
session_start();
session_unset();
$_SESSION['ident']=0;

?>

<script>
ses(1)
function ses(zz)
{
if (zz==1)
{
<?php $_SESSION['ident']=100;?>
alert ("valor: "+ <?php echo $_SESSION['ident']?>)
location.href="provaSessioSeguent.php"
}
if (zz==2)
{
<?php $_SESSION['ident']=200;?>
alert ("valor: "+ <?php echo $_SESSION['ident']?>)
}





}
</script>

El valor que se muestra en el primer alert para la variable de sesion es 100 (Correcto).

Sin embargo al pasar a la página provaSessioSeguent.php a la que va dirige la instrucción location.href el valor de la variable es 200. Siempre se actualiza al último valor (en este caso 200). No sé por qué el valor de la variables de sesion no se conserva de página a página.

El código de provaSessioSeguent.php es:

<?php
session_start();
echo "valor: ".$_SESSION['ident'];
?>
<script>
alert ("Valor: " + <?php echo $_SESSION['ident']?>)
</script>

¿Qué debo hacer para que todo funcione?
Gracias
  #2 (permalink)  
Antiguo 23/08/2009, 11:03
Avatar de gusma62  
Fecha de Ingreso: julio-2008
Ubicación: Tepatitlán, Jalisco, Mexico
Mensajes: 167
Antigüedad: 15 años, 10 meses
Puntos: 6
Respuesta: Problemacon variable de sesión

php es un lenguaje interpretado en el servidor, no en la máquina del usuario. Con esto quiero decir que el usuario recibe una página resultante de la ejecución del archivo php en el servidor.

Tu combinas php y javascript, pero no tomaste en cuenta que en el servidor NO se ejecuta el javascript. En realidad se ejecutan TODOS los códigos en php, y en el último código de php que tienes, a la variable de seción 'ident' le das el valor 200. Por eso te marca en la siguiente página ese valor.

Lo que tendrias que hacer es una funcion en php y no en javascript que según el valor de 'zz' le de el valor a la variable de seción.
  #3 (permalink)  
Antiguo 25/08/2009, 03:21
 
Fecha de Ingreso: abril-2004
Ubicación: Palma de Mallorca
Mensajes: 24
Antigüedad: 20 años
Puntos: 0
Respuesta: Problemacon variable de sesión

Muchas gracias por tu atención.

Tienes razón en todo lo que dices. En realidad ya he hecho mil pruebas en todos los sentidos. El problema es que quiero ir a la página provaSessioSeguent.php al clicar en dos enlaces diferentes. Si clico en el primer enlace, el valor de la variable de session ha de ser 100 y si clico en el segundo enlace, el valor de la variable de sesión debe ser 200.

Lo he hecho poniendo un onClick dentro del código del enlace y el código PHP para cambiar el valor de la variable de session. Siempre me coge el valor último de la variable. El motivo ya lo has apuntado tú. Entonces ¿No puedo haces este script con sesiones? Es una putada porque resulta que el servidor en el que está alojada la web, por motivos de seguridad, tiene puesto el register_globals de la configuración de PHP a OFF y no puedo pasar parámetros que sí es una solución que funcionaría.
¿Se te ocurre algo distinto para trabajar con sessiones en este problema?.

Muchas gracias otra vez y espero no importunarte demasiado.
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 02:11.