Foros del Web » Programando para Internet » PHP »

Error con logout.php

Estas en el tema de Error con logout.php en el foro de PHP en Foros del Web. Saludos de nuevo, Tengo un problema con el siguiente archivo: Código PHP: <?php       $loginCorrecto  =  false ;        $idUsuarioL ;        $nickUsuarioL ;        $emailUsuarioL ...
  #1 (permalink)  
Antiguo 09/12/2007, 03:32
Avatar de OsSk4R  
Fecha de Ingreso: octubre-2006
Ubicación: $this->home
Mensajes: 824
Antigüedad: 13 años, 1 mes
Puntos: 74
Error con logout.php

Saludos de nuevo,

Tengo un problema con el siguiente archivo:

Código PHP:
<?php

      $loginCorrecto 
false;
      
$idUsuarioL;
      
$nickUsuarioL;
      
$emailUsuarioL;
      
$nombreUsuarioL;
      
$sexosUsuarioL;
      
$regdataUsuarioL;
      
$rendataUsuarioL;
      
$estadoUsuarioL;
      
$urlUsuarioL;

if(isset(
$HTTP_COOKIE_VARS["usNick"]) && isset($HTTP_COOKIE_VARS["usPass"]))
{
$result mysql_query("SELECT * FROM usuarios WHERE nick='".$HTTP_COOKIE_VARS["usNick"]."' AND password='".$HTTP_COOKIE_VARS["usPass"]."'");

if(
$row mysql_fetch_array($result,MYSQL_ASSOC))
{
setcookie("usNick",$HTTP_COOKIE_VARS["usNick"],time()+7776000);
setcookie("usPass",$HTTP_COOKIE_VARS["usPass"],time()+7776000);
$loginCorrecto true;
$idUsuarioL $row["id"];
$nickUsuarioL $row["nick"];
$emailUsuarioL $row["email"];
$nombreUsuarioL $row["nombre"];
$sexosUsuarioL $row["sexos"];
$regdataUsuarioL $row["regdate"];
$rendataUsuarioL $row["rendate"];
$estadoUsuarioL $row["estado"];
$urlUsuarioL $row["url"];
}
else
{
//Destruimos las cookies.
echo ("Hasta la próxima!");
setcookie("usNick","x",time()-3600);
setcookie("usPass","x",time()-3600);
}
mysql_free_result($result);
}
?>
El archivo se llama logout y es para desloguearse como [email protected]
Pues bien resulta que al clickear sobre logout y desloguearse me sale el siguiente error:

Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\Archivos de programa\www\users\logout.php on line 17

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\Archivos de programa\www\users\logout.php on line 17

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Archivos de programa\www\users\logout.php on line 19

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in C:\Archivos de programa\www\users\logout.php on line 91

No se como solucionarlo de verdad, he intentado hacerlo con while tb segun los manuales de php, pero nada si lo hago con while me sale otro error...

Muchas gracias,
  #2 (permalink)  
Antiguo 09/12/2007, 03:51
Avatar de ebe
ebe
 
Fecha de Ingreso: marzo-2004
Ubicación: Guatemala
Mensajes: 363
Antigüedad: 15 años, 8 meses
Puntos: 11
Re: Error con logout.php

asegurate de estar incluyendo tu id de conexión a la base de datos, y pasáselo a mysql_query().

un saludo.
__________________
http://dev.wsnetcorp.com
  #3 (permalink)  
Antiguo 09/12/2007, 04:07
Avatar de OsSk4R  
Fecha de Ingreso: octubre-2006
Ubicación: $this->home
Mensajes: 824
Antigüedad: 13 años, 1 mes
Puntos: 74
Re: Error con logout.php

Saludos,

Noe bien lo que quieres decir amigo, si me lo explicas más detalladamente encantado!

Mmmm lo que he hecho ha sido añadirle al principipo del código los datos ce conexión con la BD:

Código PHP:
 $dbhost="localhost"//Host del mysql
    
$dbuser="root"//Usuario del mysql
    
$dbpass="pass"//Password del mysql
    
$db="db"//db donde se creará la tabla users

    
    
mysql_connect("$dbhost","$dbuser","$dbpass");
    
mysql_select_db("$db"); 
Ahora resulta que no me sale ningun error, pero esque tampoco me sale el mensaje ese de despedida (Hasta luego!). Osea que no me sale nada!

Muchas gracias,
  #4 (permalink)  
Antiguo 09/12/2007, 06:47
 
Fecha de Ingreso: noviembre-2006
Mensajes: 437
Antigüedad: 13 años
Puntos: 3
Re: Error con logout.php

Hola Deffer. No entiendo tu script para logout. Para eliminar las cookies nosé porque haces una consulta a la base de datos, no es necesario.. Fijate en tu script lo que estas haciendo en el If:
Le estas diciendo que si existen las cookies te haga la consulta y te cree 2 cookies con el nombre de usuario y el password y sinó existen que te las destruya. La frase no te parece porque nunca entra en el else ya que siempre existen esas cookies si previamente has hecho el login. Te pongo el código de como haria yo el logout:

Cita:
<?php
if(isset($HTTP_COOKIE_VARS["usNick"]) && isset($HTTP_COOKIE_VARS["usPass"]))
{
//Destruimos las cookies.
setcookie("usNick","x",time()-3600);
setcookie("usPass","x",time()-3600);
echo ("Hasta la próxima!");
}
?>
Un saludo
  #5 (permalink)  
Antiguo 09/12/2007, 06:56
Avatar de AdRiAnCeTe  
Fecha de Ingreso: marzo-2007
Mensajes: 140
Antigüedad: 12 años, 8 meses
Puntos: 0
Re: Error con logout.php

Un archivo logout.php muy común es:

Código PHP:
setcookie("usuario_nick");
setcookie("usuario_pass");
session_start();
session_destroy();
header('Location:index.php'); 
Y ya está, lo unico que hace es destruir todas las cookies y todas las sesiones existentes en dicha página y luego lo redirecciona al index. Un saludo y espero que te sirva..
  #6 (permalink)  
Antiguo 09/12/2007, 12:09
Avatar de OsSk4R  
Fecha de Ingreso: octubre-2006
Ubicación: $this->home
Mensajes: 824
Antigüedad: 13 años, 1 mes
Puntos: 74
Re: Error con logout.php

Lo siento pero lo estoy haciendo de varias maneras y bien me sigue apareciendo el error o bien como dije en el segundo mensaje, al desloguearme, no me dice se desloguea y ala! no me sale el mensaje de despedida ni nada.

Asi es como lo tengo ahora:
Código:
<?php




      $loginCorrecto = false;
      $idUsuarioL;
      $nickUsuarioL;
      $emailUsuarioL;
      $nombreUsuarioL;
      $sexosUsuarioL;
      $regdataUsuarioL;
      $rendataUsuarioL;
      $estadoUsuarioL;
      $urlUsuarioL;
    

if(isset($HTTP_COOKIE_VARS["usNick"]) && isset($HTTP_COOKIE_VARS["usPass"]))

{
$loginCorrecto = true;
$idUsuarioL = $row["id"];
$nickUsuarioL = $row["nick"];
$emailUsuarioL = $row["email"];
$nombreUsuarioL = $row["nombre"];
$sexosUsuarioL = $row["sexos"];
$regdataUsuarioL = $row["regdate"];
$rendataUsuarioL = $row["rendate"];
$estadoUsuarioL = $row["estado"];
$urlUsuarioL = $row["url"];
}
else
{
//Destruimos las cookies.
echo ("Hasta la próxima!");
setcookie("usNick","x",time()-3600);
setcookie("usPass","x",time()-3600);
}

?>
Mirar, el script lo encontre de este manual :
http://www.scourdesign.com/articulos...usuarios-1.php

Lo digo para que veais como es y ya tengais una idea más clara...

Muchas gracias!

Última edición por OsSk4R; 09/12/2007 a las 12:15
  #7 (permalink)  
Antiguo 09/12/2007, 13:58
 
Fecha de Ingreso: noviembre-2006
Mensajes: 437
Antigüedad: 13 años
Puntos: 3
Re: Error con logout.php

Hola de nuevo. El trozo de código que te he puesto, como logout funcionará siempre que esas dos cookies existan.Prueba de comprobar que en el login te crea esas dos cookies y que se llaman igual que las que pones en el logout. Como lo tienes tu no funcionará por lo que te he comentado en el anterior post.Utiliza el que te digo yo y me dices que tal..
Un saludo
  #8 (permalink)  
Antiguo 09/12/2007, 14:57
 
Fecha de Ingreso: diciembre-2007
Mensajes: 2
Antigüedad: 12 años
Puntos: 0
Re: Error con logout.php

Cita:
Iniciado por AdRiAnCeTe Ver Mensaje
Un archivo logout.php muy común es:

Código PHP:
setcookie("usuario_nick");
setcookie("usuario_pass");
session_start();
session_destroy();
header(&apos;Location:index.php&apos;); 
Y ya está, lo unico que hace es destruir todas las cookies y todas las sesiones existentes en dicha página y luego lo redirecciona al index. Un saludo y espero que te sirva..
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:11.