Ver Mensaje Individual
  #6 (permalink)  
Antiguo 08/05/2014, 10:43
Avatar de HackID1
HackID1
 
Fecha de Ingreso: febrero-2013
Ubicación: En Update
Mensajes: 492
Antigüedad: 11 años, 2 meses
Puntos: 17
Respuesta: Agregar usuarios con contraseña dentro de mi sitio

Buenas disculpa por la tardanza pero no habia podido postearte el código.

Bien para empezar debes crear una tabla en un tu Base de Datos como esta por ejemplo.

Código SQL:
Ver original
  1. CREATE TABLE  `administradores` (
  2.      `id_administrador` INT( 11 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
  3.      `nombre_administrador` VARCHAR( 60 ) NOT NULL ,
  4.      `password` VARCHAR( 60 ) NOT NULL
  5.             ) ENGINE = INNODB ;

Cita:
esa tabla te servirá para almacenar tus usuarios y contraseñas.

Ahora has un FICHERO para almacenar los datos de conexión y no estar repitiendo estos en todas las páginas, con un simple include ya te bastará para conectar a la BD.

Este es el fichero.

--> abre_conexion.php

Código PHP:
Ver original
  1. <?php
  2.  
  3. //Parametros a configurar para la conexion de la BD.
  4.  
  5. $hotsdb = "localhost";  //valor de nuestra BD
  6. $basededatos = "base_datos";    //sera el valor de nuestra BD
  7.  
  8. $usuariodb = "root";        //sera el valor de nuestra BD
  9. $clavedb = "";      //sera el valor de nuestra BD
  10.  
  11. $tabla_db3 = "administradores";
  12.  
  13. //Fin de los parametros a config para la conexion de la BD
  14.  
  15. $conexion_db = mysql_connect("$hotsdb","$usuariodb","$clavedb")
  16.     or die ("Conexión denegada, el Servidor de BD que solicita
  17.             NO EXISTE");
  18.     $db = mysql_select_db("$basededatos", $conexion_db)
  19.     or die ("La Base de Datos <b>$basededatos</b> NO EXISTE");
  20.  
  21.  
  22.  
  23. ?>

Después de crear estos 1 pasos. Pasa al siguiente.

2.
Luego de tener ya esa página que te postee anterior llamada login.php, vamos a crear la siguiente página para realizar la comprobación del usuario y contraseña.

Este código irá en una página llamada

validar_usuario.php

Código PHP:
Ver original
  1. <?php
  2.  
  3.     include("abre_conexion.php") ;
  4.  
  5.     $usuario = $_POST['usuario'];
  6.     $password = $_POST['password'];
  7.  
  8.    
  9.     /*Consulta a bd, para seleccionar el nombre_administrador enviado*/
  10.  
  11.     $sql = "SELECT *
  12.             FROM $tabla_db3
  13.             WHERE nombre_administrador = '$usuario'
  14.             ";
  15.    
  16.     /*Comprobar si consulta esta hecha correctamente*/
  17.     $result = mysql_query($sql);
  18.    
  19.     /*Validamos si nombre_administrador existe en la BD. o es correcto*/
  20.     if ($row = mysql_fetch_array($result)) {
  21.    
  22.         //si usuario es correcto, validamos la password
  23.         if ($row['password'] == $password) {
  24.        
  25.             //Creamos la sesión
  26.             session_start();
  27.             //ALMACENAMOS el nombre usuario en una variable de sesion.
  28.             $_SESSION['usuario'] = $usuario;
  29.             //Redireccionamos a la página: index.php
  30.             header("Location: index.php");
  31.         }
  32.         else {
  33.        
  34.             //Si la contraseña es incorrecta envia mensaje y redirecciona a login
  35.             ?>
  36.             <script language="javascript">
  37.                 alert ("Password incorrecto.");
  38.                 location.href = "login.php";
  39.             </script>
  40.             <?php
  41.         }   //cierra else
  42.     }   //cierra if primero.
  43.     else {
  44.    
  45.         //en caso que el nombre de administrador sea incorrecto envia mensaje y
  46.             //redirecciona a login.php
  47.         ?>
  48.         <script language="javascript">
  49.             alert("El nombre de usuario es incorrecto!");
  50.             location.href = "login.php";
  51.         </script>
  52.     <?php
  53.     }   //cierra 2 else.
  54.    
  55.    
  56.    
  57.     //Mysql_free_result() se usa para liberar memoria despues de la consulta realizada.
  58.     mysql_free_result($result);
  59.  
  60.     mysql_close();  //cierra conexion a bd.
  61.    
  62.    
  63. ?>


Con esto hasta ahora. Si pruebas a crear un usuario y password en la tabla administradores y luego lo insertas en el formulario de login.php te accederá a la página.

Sino existe el usuario o contraseña incorrecta, te enviará a la página de login.php como lo explico en las líneas.

Código Javascript:
Ver original
  1. <script language="javascript">
  2.                 alert ("Password incorrecto.");
  3.                 location.href = "login.php";
  4.             </script>

PD: Este código a continuación lo debes poner en el comienzo de todas tus páginas php que quieras restringir el acceso por LOGIN.

Deben ir al comienzo del fichero, incluso antes que la etiquetas <html>

Código PHP:
Ver original
  1. <?php
  2.  
  3.     //creamos la sesion
  4.     session_start();
  5.    
  6.     //validamos si se ha hecho o no el inicio de sesion correctamente.
  7.     if (!isset($_SESSION['usuario'])) {
  8.    
  9.         header("Location: login.php");
  10.         exit();
  11.     }
  12.    
  13. ?>

Saludos!.. Prueba el código y pregunta las dudas, si es así y estás interesado puedo continuar ayudandote, para de esta forma controlar que no se repitan los nombres usuarios insertados por ejemplo.
__________________
Puntuar +1 es buena forma de dar las gracias. :P
Your Time is limited, so don't waste it living someone else´s life.
Por: HackID1