Foros del Web » Programando para Internet » PHP »

Duda con sesion y Cookies

Estas en el tema de Duda con sesion y Cookies en el foro de PHP en Foros del Web. Hola a todos. Estoy realizando una web y al hacer login estoy guardando los datos del usuario en una sesion, el problema que tengo es ...
  #1 (permalink)  
Antiguo 04/02/2013, 11:31
 
Fecha de Ingreso: mayo-2011
Mensajes: 74
Antigüedad: 12 años, 11 meses
Puntos: 2
Pregunta Duda con sesion y Cookies

Hola a todos.

Estoy realizando una web y al hacer login estoy guardando los datos del usuario en una sesion, el problema que tengo es que si cierro el navegador, todos estos datos se me van, he leido que lo puedo hacer con cookies, pero tambien he leido que no todas las reglas de seguridad de los navegadores las permiten y que las sesiones son por asi decirlo.. mas compatibles, antes de pasarme a ellas me gustaria saber si hay alguna forma de que las sesiones no expiren, ya que me vendria genial y no lo he encontrado, de no ser asi meteria cookies y fuera.

Muchas gracias. Un saludo!
  #2 (permalink)  
Antiguo 04/02/2013, 11:37
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Duda con sesion y Cookies

si se te van es por que la cookie de session osea session_id se te borra de la cache por alguna razon y por lo cual luego el servidor no te muestra nada ya que los datos de session estan asociados a ese session_id() , abre y cierra el navegador comprueba ay que exista la session aun si no , puede ser problema de tu navegador que al cerrarlo borre automaticamente la cache
  #3 (permalink)  
Antiguo 04/02/2013, 11:42
 
Fecha de Ingreso: mayo-2011
Mensajes: 74
Antigüedad: 12 años, 11 meses
Puntos: 2
Respuesta: Duda con sesion y Cookies

Pues la cosa es que me pasa en todos los navegadores que estoy probando, por lo que creo que el problema puede estar en mi php.ini, pero no se exactamente que opcion cambiar, si es que hay alguna, por lo que te entiendo, si metiera cookies me pasaria lo mismo entonces no?
  #4 (permalink)  
Antiguo 04/02/2013, 11:45
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Duda con sesion y Cookies

si claro

comprueba todo haber

1 - crea la session
2- si tienes mozilla despues de crear la session pulsa en el boton derecho del raton en la web
-ver informacion de pagina
-pestaña seguridad
-ver cookies

- comprueba que la cookie PHPSESSID fue creada ahora cierra el navegador
- abrelo nuevamente y comprueba que sigue ay realizando los mismos pasos sin crear nada ES DECIR EN OTRA PAGINA SIN HABER VISITADO LA TUYA POR EJEMPLO ABRE EL NAVEGADOR Y QUE APAREZCA GOOGLE HAY LO COMPRUEBAS

si sigue ay ahora probamos otras soluciones.

Última edición por webankenovi; 04/02/2013 a las 11:51
  #5 (permalink)  
Antiguo 04/02/2013, 12:04
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Duda con sesion y Cookies

hecha un vistazo al manual y configura correctamente todo

http://es.php.net/manual/es/session.configuration.php
  #6 (permalink)  
Antiguo 04/02/2013, 13:15
 
Fecha de Ingreso: mayo-2011
Mensajes: 74
Antigüedad: 12 años, 11 meses
Puntos: 2
Respuesta: Duda con sesion y Cookies

Al entrar en firefox sin siquiera hacer login ya tengo la cookie SID que es como llamo a la sesion.

Inicio sesion y sigue ahi, he cerrado el navegador y cuando le abro sigue estando pero no tiene los datos del usuario guardados
  #7 (permalink)  
Antiguo 04/02/2013, 13:55
webankenovi
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Duda con sesion y Cookies

sigue aunque no te hallas logueado por que al ejecutar la pagina tienes session_start( y te genera una id , pero seguro que la id era diferente ) configuraste todo correctamente ?? miraste el manual ??
  #8 (permalink)  
Antiguo 05/02/2013, 06:13
 
Fecha de Ingreso: mayo-2011
Mensajes: 74
Antigüedad: 12 años, 11 meses
Puntos: 2
Respuesta: Duda con sesion y Cookies

Hola de nuevo, si, mire el manual y he estado trasteando toda la mañana incluso cambiandome a Cookies directamente, y pasa lo mismo, creo que es por que la pagina que estoy haciendo recibe y envia informacion asincronamente por AJAX, de esta manera, por ejemplo cuando hago el login, la llamada la hago desde un directorio distinto al que esta el login.php, y cuando pido $_SESSION['user'] tambien lo hago desde un sitio distinto al que hice el $_SESSION['user'] = usuario, creo que los tiros pueden ir por ahi pero no se, a ver si me puedes decir algo sabiendo esto, lo del nombre de sesion siempre utilizo el mismo, de eso estoy seguro, ya que una vez que me logueo y doy al F5 funciona perfectamente todo, es unicamente cuando cierro el navegador, y me pasa en todos.

Por cierto, no lei bien lo que me dijiste que hiciera y entre en la misma pagina, probando con Google despues, no tengo esa cookie, unicamente las de google.

Tambien, mirando en google la informacion sobre cookies me dice lo siguiente:

Caduca: Al finalizar la sesión de navegación

Un saludo y muchas gracias

Última edición por xuturk; 05/02/2013 a las 06:26
  #9 (permalink)  
Antiguo 05/02/2013, 07:39
 
Fecha de Ingreso: febrero-2013
Mensajes: 17
Antigüedad: 11 años, 2 meses
Puntos: 2
Respuesta: Duda con sesion y Cookies

Haber, simplemente añade esta línea:

Cita:
session_name("NOMBRE DE SESION");
session_start();

setcookie('NOMBRE DE SESION', $_COOKIE['NOMBRE DE SESION'], time()+31536000, 'URL FORMULARIO');
Modifica "NOMBRE DE SESION" por el identificador que hayas indicado en tu PHP y se te mantendra la sesión iniciada por un año, puedes trastear para que cada ved que entre este año se actualice y empiece a contar desde la ultima visita, e incluso que el propio usuario decida si mantener o no la sesion iniciada.

En "URL FORMULARIO" si por ejemplo es el logueo que esta en el index PHP pones "/" si es en una página especifica como por ejemplo login php pones "/login.php" o sino quitas el parametro y te lo toma por defecto desde donde se loguee el usuario.


Ahh se me olvidava, añade esto en tu HTACCESS


Cita:
php_value session.cookie_lifetime 0
php_value session.gc_maxlifetime 0
  #10 (permalink)  
Antiguo 05/02/2013, 09:33
 
Fecha de Ingreso: mayo-2011
Mensajes: 74
Antigüedad: 12 años, 11 meses
Puntos: 2
Respuesta: Duda con sesion y Cookies

Muchas gracias, ahora con Chrome ya me funciona, me marca la cookie como que expira en un año y efectivamente al cerrar el navegador y volver a entrar sigue logueado, hasta ahi todo bien, deduzco que ha sido por lo del tercer parametro ya que le he tenido que poner para todo el conjunto de carpetas y ha empezado a funcionar.

El problema ahora, es que pruebo con Iexplorer y con Firefox y con ninguno funciona :S este ultimo me dice que tiene dos cookies sid, una que expira al cerrar la sesion y otra que expira en un año, creo que no se esta sobreescribiendo y de ahi viene el problema, ¿Podrias decirme alguna forma de cargarme la que ya hay y sustituirla por esta? He de decir que en todas las paginas tengo al cargar un session_name = "sid" y un session_start();

Gracias de nuevo.

Un saludo.

Etiquetas: cookies
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:12.