Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Como saber si se esta logueado

Estas en el tema de Como saber si se esta logueado en el foro de PHP en Foros del Web. Hola se que esto es una consulta de novato pero es lo que soy xD Tengo ya mi pagina de registro e inicio de sesion ...
  #1 (permalink)  
Antiguo 06/01/2015, 10:01
Avatar de dmrx921  
Fecha de Ingreso: enero-2015
Mensajes: 35
Antigüedad: 4 años, 11 meses
Puntos: 0
Como saber si se esta logueado

Hola se que esto es una consulta de novato pero es lo que soy xD

Tengo ya mi pagina de registro e inicio de sesion creadas y ambas funcionan, ahora lo que quiero saber es si el usuario que se loguea esta o no logueado y que le aorezcan cosas como su nombre y demas cosas que ire implementado en la web y no el formulario de registro.

Os dejo mi html y el archivo que hace el logueo para que los veias y sepais un poco mejor como trabaja la web.

Código HTML:
Ver original
  1. <html lang="es">
  2.  
  3.     <title>prueba</title>
  4.     <meta http-equiv="content-type" content="text/html;charset=utf-8" />
  5.     <link href="estilo.css" type="text/css"
  6.     rel="stylesheet" />
  7. </head>
  8.         <div id="todo">
  9.         <div id ="contenedor">
  10.                 <div id ="cabecera">
  11.                    
  12.                     <div id="logo">
  13.                         <ul>
  14.                             <li><img src="logo.png" width="100px" height="100px" alt="Despliegate"/></li>
  15.                             <li><a href="/paginas/prueba/index.html">Despliegate</a></li>
  16.                         </ul>
  17.                     </div>
  18.                 </div>
  19.                
  20.                 <div id="menu">
  21.                     <div id="menu">
  22.                         <ul>
  23.                             <li><a href="#menuh" id="primero">Inicio</a></li>
  24.                             <li><a href="#menuh">Comentarios</a></li>
  25.                             <li><a href="#menuh">Noticias</a></li>
  26.                             <li><a href="#menuh">Contacto</a></li>
  27.                             <li><a href="#menuh">Acerca de nosotros</a></li>
  28.                         </ul>
  29. </div>
  30.                 </div>
  31.                 <div id ="panel">
  32.                     <table>
  33.                        
  34.                          <form action="conecta.php" method="post" name="datos">
  35.                                
  36.                             <tr>
  37.                                 <td>Nombre de usuario:</td><td><input type="text" name="email" id="email" /><br></td>
  38.                             </tr>
  39.                             <tr>
  40.                                 <td>Contraseña:</td><td><input type="password" name="contrasena" id="contrasena"><br></td>
  41.                             </tr>  
  42.                        
  43.                             <tr>
  44.                             <td></td><td><input type="submit" value="Iniciar sesion" /></td>
  45.                             </tr>
  46.                           </form>
  47.                     </table>
  48.                     <a href="Registro.html"><h3>Registro</h3></a>
  49.                    
  50.                 </div>
  51.                 <div id ="contenido">
  52.                     <a href="conexion.php" id="Inicio">Inicio</a>
  53.                 </div>
  54.                
  55.  
  56.         </div>
  57.         </div>
  58.  
  59.     </body>
  60. </html>
  61. </body>
  62.  
  63. </html>

Código PHP:
Ver original
  1. <?php
  2.  
  3.  
  4. /* start the session */
  5.  
  6.  
  7.  
  8.  $host_db = "localhost";
  9.  $user_db = "root";
  10.  $pass_db = "dmrx921";
  11.  $db_name = "despliegate";
  12.  $tbl_name = "usuarios";
  13.  
  14. // Connect to server and select databse.
  15. mysql_connect("$host_db", "$user_db", "$pass_db")or die("Cannot Connect to Data Base.");
  16.  
  17. mysql_select_db("$db_name")or die("Cannot Select Data Base");
  18.  
  19. // sent from form
  20. $username = $_POST['email'];
  21. $password = $_POST['contrasena'];
  22.  
  23. $sql= "SELECT * FROM $tbl_name WHERE email = '$username' and contrasena='$password'";
  24.  
  25. $result=mysql_query($sql);
  26.  
  27. // counting table row
  28. $count = mysql_num_rows($result);
  29. // If result matched $username and $password
  30.  
  31. if($count == 1){
  32.  
  33.  $_SESSION['loggedin'] = true;
  34.  $_SESSION['email'] = $username;
  35.  $_SESSION['start'] = time();
  36.  $_SESSION['expire'] = $_SESSION['start'] + (60 * 60) ;
  37.  
  38. header('Location: index2');
  39. }
  40.  else {
  41.  echo "<br/>Username o Password estan incorrectos.<br>";
  42.  
  43.  echo "<a href='main_login.html'>Volver a Intentarlo</a>";
  44. }
  45.  
  46. ?>

Gracias a todos por adelantado
  #2 (permalink)  
Antiguo 06/01/2015, 10:23
 
Fecha de Ingreso: enero-2015
Ubicación: Cordoba, Andalucía
Mensajes: 111
Antigüedad: 4 años, 11 meses
Puntos: 15
Respuesta: Como saber si se esta logueado

http://es.wikihow.com/crear-un-script-de-inicio-de-sesión-segura-en-php-y-MySQL

lee esto merece mucho la pena sobre el tema que preguntas y para resorver huecos que veo en tu código.
  #3 (permalink)  
Antiguo 06/01/2015, 18:07
 
Fecha de Ingreso: agosto-2014
Mensajes: 18
Antigüedad: 5 años, 3 meses
Puntos: 0
Respuesta: Como saber si se esta logueado

Algo muy importante que debes saber, es que si quieres que en tu pagina principal aparezca tu nombre debes de cambiar tu archivo html por un php para que puedas mostrar datos de PHP.
Primero que nada debes almacenar en una variable el dato que quieres que te muestre, lo vas a hacer en el archivo que realizas las consultas mysql.

Despues esa variable la metes en una variable de sesion y posteriormente esa variable la imprimes en el archivo que quieres que te muestre el nombre.
echo "Logueado actualmente: ".$_SESSION['nombre'];

Espero y me haya explicado....

Etiquetas: formulario, html, logueado, mysql, registro, select, sql, usuarios
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:28.