Foros del Web » Programando para Internet » PHP »

Intentando sesiones

Estas en el tema de Intentando sesiones en el foro de PHP en Foros del Web. Hola, me he leido de todo sobre las sesiones y llevo ya dos dias penando con el tema, auqnue seguro que es muy facil no ...
  #1 (permalink)  
Antiguo 27/08/2007, 17:03
 
Fecha de Ingreso: febrero-2007
Mensajes: 58
Antigüedad: 17 años, 1 mes
Puntos: 0
Intentando sesiones

Hola, me he leido de todo sobre las sesiones y llevo ya dos dias penando con el tema, auqnue seguro que es muy facil no consigo que me quede tan sencillo como registrarme en este foro.

Despues de mucho intentar consigo crear una sesión, pero SOLO al abrir una ventana nueva, no como aquí que no cambias de ventana, y no entiendo porque.

Aún con ese inconveniente resulta que me conformo, pero para pasar el codigo del usuario a una página nueva solo puedo hacerlo por GET y se ve demasiado, además tengo que pulsar un boton por que me es imposible hacer un formulario en javascript que se envie solo a una pagina en blanco (ya averigue que _blank no lo coge). Además he tenido otros problemas varios con la web por que la tengo en un server gratuito y ademas redirigida....

Asi que mi pregunta es ¿como se hace para abrir y usar una sesión dentro de la misma ventana?

Gracias
  #2 (permalink)  
Antiguo 27/08/2007, 17:18
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 7 meses
Puntos: 2114
Re: Intentando sesiones

¿Podrías aportar el código que estás usando?

Normalmente con algo así tendria que funcionar bien:
Código PHP:
if(compruebas el usuario) {
session_start();
$_SESSION['logeado']=true;

Y después en las demás páginas puedes comprobar si está logeado simplemente haciendo:
Código PHP:
if($_SESSION['logeado']) echo "El usuario está logeado"
De todas formas aporta el código, igual estás pasando algo por alto.
  #3 (permalink)  
Antiguo 28/08/2007, 00:42
 
Fecha de Ingreso: febrero-2007
Mensajes: 58
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Intentando sesiones

...pues por un ejeplo tengo la pagina:

<?php
session_name('misesion');
session_register('contador');
$_SESSION['contador']=4;

luego le tengo un boton que me lleva a esta pagina

<?php
session_name('misesion');
session_register('contador');
$eso= $_SESSION['contador'];
echo 'Ahora el nombre es '.session_name().' y la sesión '.$eso.'<br>';
$eso2 = $_SESSION['id'];
echo "y la variable $eso2";
?>

cada vez que voy a la pagina 2 el id de la sesion me cambia, y por supuesto que no me manda la variable "contador"

Ahora bien, si con el boton abro una nueva ventana, entonces si me inicia correctamente la sesion, y de hecho me la respeta en la ventana primera.

¿que hago mal para que no me abra la una sola sesion en la misma ventana?

gracias
  #4 (permalink)  
Antiguo 28/08/2007, 04:43
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 7 meses
Puntos: 2114
Re: Intentando sesiones

Prueba a usar session_start().
  #5 (permalink)  
Antiguo 28/08/2007, 07:43
Avatar de andruqui  
Fecha de Ingreso: agosto-2007
Mensajes: 269
Antigüedad: 16 años, 7 meses
Puntos: 2
Re: Intentando sesiones

Yo en particular nunca uso ni session_register ni session_name.
Uso como bien dice Bonez y ningun problema.

Saludos
Andres
  #6 (permalink)  
Antiguo 28/08/2007, 11:36
 
Fecha de Ingreso: febrero-2007
Mensajes: 58
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Intentando sesiones

...por supuesto ya probe con session_start(), ambas dan el mismo resultado. Quizás sea por el redireccionado de la web, no lo se, pero me funciona sólo cuando se abre una nueva página.
  #7 (permalink)  
Antiguo 28/08/2007, 13:37
Sk!
 
Fecha de Ingreso: agosto-2007
Mensajes: 16
Antigüedad: 16 años, 7 meses
Puntos: 0
Re: Intentando sesiones

Bueno pon esto:

session_start();


al inicio de TODAS tus paginas, ya veras q se solucionara... es q en php debes iniciar sesion cada vez q cambias de pagina, posiblemente tu problema es q solo la inicias en la verificacion, y luego de hacer el forwarding, no la llamas de nuevo en el inicio.

tambn recuerda que session_start() debe estar prioritariamente al inicio d cada codigo, ANTES de llamar variables o funciones de sesion, y definitivamente antes de Exportar cualquier salida HTML!

recduerda pon session_start al inicio de todos tus codigos,

jajajaj cuando estab empezando me preguntaba por q en la seccion de logout decia:
session_start();
session_destryoy();

incluso pa destruirla tienes q iniciala jajaja
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 20:20.