Foros del Web » Programando para Internet » PHP »

Como borrar una cookie en PHP 5

Estas en el tema de Como borrar una cookie en PHP 5 en el foro de PHP en Foros del Web. Vengo leyendo varios post sobre borrar cookies, pero aún no puedo hacer que se me borren efectivamente. Lo que me pasa es que en el ...
  #1 (permalink)  
Antiguo 09/08/2010, 16:57
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Como borrar una cookie en PHP 5

Vengo leyendo varios post sobre borrar cookies, pero aún no puedo hacer que se me borren efectivamente. Lo que me pasa es que en el archivo logout.php si se borra, pero al redirigir a index.php, magicamente están ahí otra vez. Lo se porque hago un print_r() en ambos casos.

Mi logout.php es algo así:

Código PHP:
<?php
  
session_start
();  

    
session_unset();  
    
session_destroy();  
    unset(
$_COOKIE['AoIuser']); 
    unset(
$_COOKIE['userPass']); 
    
    
header("location: ../../index.php");  

?>
Y en mi index.php tengo:
Código PHP:
if (isset($_COOKIE["AoIuser"]) && isset($_COOKIE["userPass"])){

    
print_r($_COOKIE);
... 
Probé varios metodos y se que el de unset funciona. Pero como digo, reaparecen magicamente y me es imposible hacer un logout. Será un problema de cabeceras?
  #2 (permalink)  
Antiguo 09/08/2010, 17:08
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: Como borrar una cookie en PHP 5

Solucionado. Pero me gustaría una solución mejor.

logout.php
Cita:
...
header("location: ../../index.php?logout=1");
index.php
Cita:
if (isset ($_GET['logout']) and $_GET['logout'] == 1){
unset($_COOKIE['AoIuser']);
unset($_COOKIE['userPass']);
}
La clave me la dio este comentario:
http://www.php-hispano.net/foros/PHP...liminar-cookie

Parece que las cookies son relativas a un directorio. Yo las estoy creando e intentando borrarlas desde un mismo subdirectorio. Pero index.php, por alguna razón, no comparte las mismas cookies. Será porque al declararlas uso "/"?

Cita:
setcookie("AoIuser", utf8_encode(trim($_POST['name'])), time() + 3600, "/");
setcookie("userPass", utf8_encode(trim(md5($_POST['clave']))), time() + 3600, "/");
  #3 (permalink)  
Antiguo 09/08/2010, 17:14
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: Como borrar una cookie en PHP 5

SOLUCIONADO definitivamente.

El problema estaba nomás en la barrita. Si se crea con ese parametro hay que borrarla así, con ese parametro:

Cita:
setcookie("AoIuser", "", time() - 3600, "/");
setcookie("userPass", "", time() - 3600, "/");
  #4 (permalink)  
Antiguo 09/08/2010, 19:57
Avatar de ehguacho  
Fecha de Ingreso: febrero-2010
Mensajes: 138
Antigüedad: 14 años, 1 mes
Puntos: 4
Respuesta: Como borrar una cookie en PHP 5

yo tenia este tipo de problemas tambien. particularmente, siempre las cookies me dieron dolores de cabeza. es por eso que decidi cambiarme al método de sesiones de usuario.
__________________
Cine clásico en descarga directa! http://felliniycia.comule.com
  #5 (permalink)  
Antiguo 10/08/2010, 09:46
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: Como borrar una cookie en PHP 5

Me hubiera encantado usar sesiones para extender un logueo. Pero la verdad es que nunca pude extender una session más allá de cuando se cierra el navegador.
  #6 (permalink)  
Antiguo 11/08/2010, 11:35
Avatar de ehguacho  
Fecha de Ingreso: febrero-2010
Mensajes: 138
Antigüedad: 14 años, 1 mes
Puntos: 4
Respuesta: Como borrar una cookie en PHP 5

Cita:
Iniciado por mayid Ver Mensaje
Me hubiera encantado usar sesiones para extender un logueo. Pero la verdad es que nunca pude extender una session más allá de cuando se cierra el navegador.
eso creo que se modifica desde el "config" de PHP. raro lo que me decis! yo tengo un sistema de logueo implementado y no se me cierra la sesion cuando cierro el navegador :\
__________________
Cine clásico en descarga directa! http://felliniycia.comule.com
  #7 (permalink)  
Antiguo 11/08/2010, 11:45
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: Como borrar una cookie en PHP 5

Bueno, quizás desde el php.ini se pueda modificar para sesiones locales. Pero a mi me interesa la perseverancia en servidor remoto (que es free y no permite modificar el php.ini). Entonces, si hubiera alguna manera de hacer session extensible por, digamos, 3 meses, buenísimo, pero no conozco la forma.

Por cierto, el tema de las cookies no está resuelto porque la verdad es que puedo crearlas y destruirlas, pero de ninguna manera se mantiene el logueo cuando vuelvo a abrir el navegador.

Etiquetas: borrar, cookie
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 10:06.