Foros del Web » Programando para Internet » PHP »

Problema con Cookies...

Estas en el tema de Problema con Cookies... en el foro de PHP en Foros del Web. Buenas! tengo un lio con las cookies que no me aclaro. voy a intentar explicar mi problema... tengo en una web una sección de noticias ...
  #1 (permalink)  
Antiguo 30/04/2003, 03:39
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 10 meses
Puntos: 3
Problema con Cookies...

Buenas! tengo un lio con las cookies que no me aclaro. voy a intentar explicar mi problema...

tengo en una web una sección de noticias y un foro. y me gustaria que el usuario, una vez loginado, no tuviera que volver a loginarse. cuando entro por ejemplo en noticias, compruebo, y si no hay cookie, la creo de la siguiente manera:

setcookie ("usuario",time()+3600);
setcookie ("password",time()+3600);

la cuestión es que me la crea y reconoce, pero despues de un tiempo deja de funcionar. que tendria que modificar para que fuese una cookie de sesión??

luego, en el login, tengo lo siguiente:

<?
if (isset($usuario) and isset($password)){
header("location:pagina.php");
}
?>


y funciona perfectamente. la cosa es que cuando entro en la otra sección, la de foro, tengo lo mismo, la misma cookie, pero no me la reconoce entre sí. donde está el error??

Salu2 y Gracias
  #2 (permalink)  
Antiguo 30/04/2003, 04:10
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 10 meses
Puntos: 3
pq cuando cierro el explorador pierdo el valor de la cookie, si en time le especifico 3600 segundos (1 hora)????


Por favor, que alguien me ayude. Gracias!
  #3 (permalink)  
Antiguo 30/04/2003, 04:20
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 22 años, 5 meses
Puntos: 16
Hola,

Lee el manual http://www.php.net/manual/en/function.setcookie.php . Ahi veras que no estas pasando bien los parametros. El tiempo de expiracion es el tercer parametro, no el segundo como tienes tu.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #4 (permalink)  
Antiguo 30/04/2003, 09:29
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 10 meses
Puntos: 3
Antetodo gracias por responder Josemi. He mirado como me has dicho el manual, y como bien decias, me faltaba un parametro. tengo otra duda, como se haria, para que el tiempo de expiración de la cookie fuese la sesión??


gracias
  #5 (permalink)  
Antiguo 01/05/2003, 16:50
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 22 años, 5 meses
Puntos: 16
Hola,

De la misma pagina que te di antes, donde explica el parametro expire:
Cita:
time()+60*60*24*30 will set the cookie to expire in 30 days. If not set, the cookie will expire at the end of the session (when the browser closes).
Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #6 (permalink)  
Antiguo 05/05/2003, 10:25
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 10 meses
Puntos: 3
Perdonad, pero sigo sin aclararme con lo de las cookies. A ver si alguien consigue darme una solución. Os vuelvo a poner en en el tema...

A ver, para acceder a dos opciones de mi web necesitas estar loginado, noticias y foro. lo que hago es que cuando entro en una u otra, una vez comprobado que el usuario está en mi bd, creo la cookie:

setcookie ("usuari",$usuario);
setcookie ("pass",$password);

entonces, cuando accedo des del menú a la opción (noticias.php o foro.php), compruebo la existencia de la cookie:

if (isset($usuari) and isset($pass)){
y en caso de reconocerla, entro, sino lo reenvio mediante header a la pagina de loginarse.

pues no consigo que la cookie me la reconozca en las dos secciones. cada una va por libre, y he de entrar en cada uno de los logineos para que me reconozca. que sucede?? que puedo hacer??

Salu2 y Gracias
  #7 (permalink)  
Antiguo 05/05/2003, 10:39
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 10 meses
Puntos: 3
el problema puede ser que está en carpetas diferentes? la cookie no la crea a nivel general?? tengo que darle la ruta a la cookie para que sea a nivel global??

Por favor, ayudarme!!
  #8 (permalink)  
Antiguo 05/05/2003, 10:41
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Usa un array .. o el método que describe el propio manual de PHP en la seccion cookies (setcookie) ..

A todo esto .. tambien intenta usar cookies via $_COOKIE (array superglobal) y no asumiendo como globales las varibles que estas "buscandolas" en una cookie.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 14:08.