Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/10/2011, 17:42
felire
(Desactivado)
 
Fecha de Ingreso: agosto-2011
Mensajes: 42
Antigüedad: 12 años, 9 meses
Puntos: 9
Pregunta problema con sistema de login en php

Hola, necesito ayuda, lo que me pasa no es un error, es esto, yo tengo un registro y un login, cuando me logeo, se logea todo bien y cuando presiono en salir de la cuenta, tengo que presionar 1 vez el boton y me vuelve a aparecer otro texto, y presiono devuelta en salir y ahi se me sale, lo que yo deseo es que se deslogue de la cuenta en el primer click, les pongo los codigos de registro.php, conexion.php y login.php .

conexion.php :

Código PHP:
Ver original
  1. <?php
  2. $nombre_server[1] = 'localhost';
  3. $nombre_user[2] = 'root';
  4. $nombre_db[3] = 'estudiophp';
  5. $password[4] = '';
  6.  
  7.      $conexion = @mysql_connect($nombre_server[1],$nombre_user[2],$password[4]) or exit ('Los datos ingresados no existen');
  8.      mysql_select_db($nombre_db[3]) or exit('La base de datos no existe');
  9.  
  10. if($_GET['desconectar'] == 1){
  11. echo "Usted se a deslogeado con exito";
  12. }
  13. ?>

registro.php :

Código PHP:
Ver original
  1. <?php
  2. include("conexion.php");
  3. if(isset($_POST['registro']))
  4. {
  5.   if(($_POST['nick'] != '') && ($_POST['pass'] != '') && ($_POST['mail'] != ''))
  6.   {
  7.    if($_POST['pass'] == $_POST['confpass'])
  8.     {
  9.      $nick = $_POST['nick'];
  10.      $pass = md5($_POST['pass']);
  11.      $mail = $_POST['mail'];
  12.       $resultado = mysql_query("SELECT nick, mail FROM pruebas WHERE (nick = '$nick') OR (mail = '$mail')");
  13.       $fila = mysql_fetch_array($resultado);
  14.       if($fila['nick'] == $nick)
  15.       {
  16.       echo "El nick esta en uso";
  17.       }
  18.       elseif($fila['mail'] == $mail)
  19.       {
  20.       echo "El mail esta en uso";
  21.       }
  22.       else
  23.       {
  24.       mysql_query("insert into pruebas(nick,pass,mail) values ('$nick','$pass','$mail')");
  25.       echo 'Los datos han sido enviados correctamente';
  26.       }
  27.     }
  28.     else
  29.     {
  30.     echo 'Las contraseñas no coinciden';
  31.     }
  32.   }
  33.     else
  34.     {
  35.     echo 'Debera rellenar todos los campos';
  36.     }
  37. }
  38. ?>
  39. <html>
  40. <head>
  41. <title>asdasdads</title>
  42. </head>
  43. <body>
  44. <form method="post" action="registro.php">
  45. nick
  46. <input type="text" name="nick">
  47. pass
  48. <input type="text" name="pass">
  49. confirmar contraseña
  50. <input type="text" name="confpass">
  51. mail
  52. <input type="text" name="mail">
  53. <input type="submit" value="enviar" name="registro">
  54. </form>
  55. </body>
  56. </html>

login.php :

Código PHP:
Ver original
  1. <?php
  2. include("conexion.php");
  3. if(isset($_POST['enviar']))
  4. {
  5.     $nick = $_POST['nick'];
  6.     $pass = $_POST['pass'];
  7.     if(isset($nick) && isset($pass))
  8.     {
  9.         $resultado = mysql_query("SELECT nick, pass FROM pruebas WHERE (nick = '$nick') AND (pass = md5('$pass'))");
  10.         if(mysql_num_rows($resultado) > 0)
  11.         {
  12.         $_SESSION['nick'] = $nick;
  13.         $_SESSION['logeado'] = true;
  14.         }
  15.         else{
  16.         echo "Usuario o contraseña incorrectos.";
  17.         }
  18.     }
  19.     else{
  20.     echo "Usuario o contraseña incorrectos.";
  21.     }
  22. }
  23. ?>
  24. <?php
  25. if($_SESSION['logeado'] == true){
  26. echo "Usted ".$_SESSION['nick']." esta logeado";
  27. ?>
  28. </br></br>
  29. <a href="<?php $_SERVER['PHP_SELF']?>?desconectar=1">Salir</a>
  30. <?php
  31. }
  32. else{
  33. ?>
  34. <html>
  35. <head>
  36. <title>Login</title>
  37. </head>
  38. <body>
  39. <form method="post" action="login.php">
  40. Nick:<input type="text" name="nick">
  41. Password:<input type="text" name="pass">
  42. <input type="submit" name="enviar">
  43. </form>
  44. </body>
  45. </html>
  46. <?php
  47. }
  48. ?>

Muchas gracias, espero respuesta.