Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Crear un Login con PHP y mysql
#1
Lo primero que necesitamos para hacer un Login es crear una base de datos Mysql así que abren el notepad y escriben el siguiente codigo:
Código:
CREATE TABLE `usuario` (
  `idusuario` INT(11) NOT NULL AUTO_INCREMENT,
  `usuario` VARCHAR(20) NOT NULL,
  `password` VARCHAR(10) NOT NULL,
  `cuenta` VARCHAR(10) NOT NULL,
  PRIMARY KEY  (`idusuario`)
)

una vez terminado lo guardan como "usuario.sql", entrar a su base de datos en "Phpmyadmin" y le dan importar.

ahora vamos a crear un archivo de conexion para la base de datos que vamos a nombrar "conexion.php"
vale destacar que tienen que agregarles los datos de coneccion de su base de datos
Código:
<?php

// datos para la coneccion a mysql
define('DB_SERVER','El servidor de tu base de datos');
define('DB_NAME','nombre de tu base de datos');
define('DB_USER','usuario de tu base de datos');
define('DB_PASS','la contraseña de la base de datos');

    $con = mysql_connect(DB_SERVER,DB_USER,DB_PASS);
    mysql_select_db(DB_NAME,$con);

?>
ya con la base de datos nos queda hacer un login, para lo cual abren otra hoja en el notepad y pega el siguente código:
Código:
<?php
session_start();
include_once "conexion.php";
//Ademas incluimos import_request_variables esta función exporta
//las variables GET, POST y Cookies en un ámbito global.

import_request_variables("GP", "");

//Función verificar_login()
//Vamos a crear una función llamada verificar_login, esta se encargara de hacer una
//consulta a la base de datos para saber si el usuario ingresado es correcto o no.
function verificar_login($user,$password,$cuenta,&$result)
    {  
        $cuenta = 'basic';
        $sql = "SELECT * FROM usuario WHERE usuario='$user' and password='$password' and cuenta='$cuenta'";
        $rec = mysql_query($sql)or die( mysql_error() );
        $count = 0;
        while($row = mysql_fetch_object($rec))  //EN ESTA LINEA ESTÁ EL ERROR
        {
            $count++;
            $result = $row;
        }
        if($count == 1)
        {
            return 1;
        }
        else
        {
            return 0;
        }
    }



//Luego haremos una serie de condicionales que identificaran el momento en el boton de login es presionado y cuando
//este sea presionado llamaremos a la función verificar_login() pasandole los parámetros ingresados:
        
if(!isset($_SESSION['userid'])) //es para saber si existe o no ya la variable de sesión que se va a crear cuando el usuario se logee
{
    if(isset($_POST['login'])) //Si la primera condición no pasa, haremos otra preguntando si el boton de login fue presionado
    {
        if(verificar_login($_POST['user'],$_POST['password'],$_POST['cuenta'],$result) == 1) //Si el boton fue presionado llamamos a la función verificar_login() dentro de otra condición preguntando si resulta verdadero y le pasamos los valores ingresados como parámetros.
        {
            
            $_SESSION['userid'] = $result->idusuario; //Si el login fue correcto, registramos la variable de sesión y al mismo tiempo refrescamos la pagina index.php.
           $_SESSION['user'] = $user->$user;
           $_SESSION['cuenta']= $cuenta->$cuenta;
            header("location:secion.php");
          

        }
        else //Si la variable de sesión ‘userid’ ya existe, que muestre el mensaje de saludo.
        {
            echo '<div class="error">Su usuario es incorrecto, intente nuevamente.</div>'; //Si la función verificar_login() no pasa, que se muestre un mensaje de error.
        }
    }
?>

<style type="text/css">
*{
    font-size: 14px;
}
form.login {
    background: none repeat scroll 0 0 #F1F1F1;
    border: 1px solid #DDDDDD;
    font-family: sans-serif;
    margin: 0 auto;
    padding: 20px;
    width: 278px;
}
form.login div {
    margin-bottom: 15px;
    overflow: hidden;
}
form.login div label {
    display: block;
    float: left;
    line-height: 25px;
}
form.login div input[type="text"], form.login div input[type="password"] {
    border: 1px solid #DCDCDC;
    float: right;
    padding: 4px;
}
form.login div input[type="submit"] {
    background: none repeat scroll 0 0 #DEDEDE;
    border: 1px solid #C6C6C6;
    float: right;
    font-weight: bold;
    padding: 4px 20px;
}
.error{
    color: red;
    font-weight: bold;
    margin: 10px;
    text-align: center;
}
</style>
<form action="" method="post" class="login">
    <div><label>Username</label><input name="user" type="text" value="<?php echo $user; ?>"></div>
    <div><label>Password</label><input name="password" type="password"></div>
    <div><input name="login" type="submit" value="login"></div>
</form>
<body>
<?php
} else {
    echo 'Su usuario ingreso correctamente.';
    echo '<a href="logout.php">Logout</a>';
    echo $_SESSION['userid'];
    echo $_SESSION['user'];
    echo $_SESSION['cuenta'];
    }
    
?>

luego creamos un archivo llamado "logout.php" para desloguearnos
Código:
<?php

    session_start();
    session_destroy();
    
    header('location: index.php');

?>

hasta ahi esta completo el sistema de logueo, solo nos resta crear un registro pero eso se los dejo para el proximo postGran sonrisa

PD:cualquier duda, mejora o aporte no duden en comentar Guiño
#2
Muy bueno, te dejo un tanks por el aporte Guiño

Y espero ansioso el sistema de registro Sonrisa
WWW
#3
Muchas gracias por este código, seguro me servirá para alguna clase jejeje.
WWW
#4
Muchas gracias. Seguro que nos resulta útil Guiño
WWW
#5
muy bueno te lo agradesco con un thanks.


Posibles temas similares...
Tema Autor Respuestas Vistas Último mensaje
  Modos de tema Fb Access: Login simple con el Facebook SDK y PHP cmascreativo 14 239 02-03-2018, 05:41 PM
Último mensaje: ArtuGar
  Subir multiples archivos o imágenes al servidor y guardarlas con PHP y MySQL cmascreativo 5 161 02-03-2018, 08:08 AM
Último mensaje: easy english
  CREAR PROGRAMA DE AFILIADOS alieninc 2 164 04-02-2018, 01:49 AM
Último mensaje: ReyNexo23
Bug Problema conectando con MySql remoto yuma2009 2 148 01-02-2018, 11:52 AM
Último mensaje: easy english
  Crear sitio web/blog Vero190 15 416 14-01-2018, 04:44 AM
Último mensaje: ReyNexo23
  error mysql en php admin efbsfcd 2 121 14-12-2017, 12:49 AM
Último mensaje: jeje
Sonrisa Login->html+js+ajax+php wpadilla 2 263 05-11-2017, 12:39 PM
Último mensaje: piensaengrande
  Problema conexion remota mysql efbsfcd 2 260 07-07-2017, 07:19 AM
Último mensaje: efbsfcd
  [Tutorial] Pasar MySQL a MySQLi[POO] amner 6 495 03-05-2017, 02:05 AM
Último mensaje: ReyNexo23
  Como subir Archivos, Imagenes PHP MysQL gassip 0 1,334 24-10-2016, 06:59 AM
Último mensaje: gassip



Usuarios navegando en este tema: 1 invitado(s)