Ver Mensaje Individual
  #10 (permalink)  
Antiguo 10/02/2011, 18:01
Avatar de jonasanx
jonasanx
 
Fecha de Ingreso: enero-2011
Ubicación: La Via Lactea, Mexico, Mexico, Mexico
Mensajes: 134
Antigüedad: 13 años, 4 meses
Puntos: 4
Respuesta: Sistema de Login.

Escribí un script sencillo y trate de comentarlo lo mejor posible, sinceramente espero que le sirva.

Nota: TODO significa 'por hacer', en otras palabras, que se debería completar el script con lo comentado.

Código PHP:
Ver original
  1. <?php
  2. // Verifica que el formulario se ha recibido, de lo contrario muestra el formulario.
  3. if(isset($_POST['enviar']))
  4. {
  5.     // Inicia variables para su posterior utilización.
  6.     $usuario = $_POST['usuario'];
  7.     $contrasena = $_POST['contrasena'];
  8.    
  9.     // Esta variable se carga si se recibe un error
  10.     $error = '';
  11.    
  12.     if(empty($usuario))
  13.         $error .= '<p>Debe escribir un usuario</p>';
  14.        
  15.     if(empty($contrasena))
  16.         $error .= '<p>Debe ingresar una contrase&ntilde;a</p>';
  17.    
  18.     // Si no hay errores se valida al usuario
  19.     if(empty($error)){
  20.        
  21.         // TODO: Sustituir por validacion a través de base de datos.      
  22.        
  23.         if($usuario == 'demo' && $contrasena == 'demo'){
  24.                        
  25.             // TODO: Registrar sesion (http://php.net/manual/es/features.sessions.php)     
  26.            
  27.             // Redirige al usuario
  28.             header('Location: index2.php');
  29.         }
  30.         // Si no se reconoce al usuario, imprime error.
  31.         else{
  32.             $error = '<p>El usuario no existe o la contrase&ntilde;a es incorrecta</p>';
  33.         }
  34.     }
  35. }
  36.  
  37. ?>
  38.  
  39. <?php
  40. // Si existen errores se imprimen
  41. if(!empty($error)){
  42.     print '<div class="error">'.$error.'</div>';
  43. }
  44. ?>
  45.  
  46. <!-- Formulario para identificar al usuario -->
  47. <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post">
  48.  
  49. <label>Usuario</label>
  50.     <input name="usuario" type="text">
  51. <label>Contrase&ntilde;a</label>
  52.     <input name="contrasena" type="password">
  53.    
  54. <input name="enviar" value="Enviar" type="submit">
  55. </form>