Ver Mensaje Individual
  #2 (permalink)  
Antiguo 31/05/2014, 03:32
ruben_2s
 
Fecha de Ingreso: mayo-2014
Mensajes: 6
Antigüedad: 10 años
Puntos: 0
Busqueda Respuesta: Login con base de datos externa

Es muy sencillo:
Entras en la consola mysql, creas una base de datos con el comando para crear la base de datos
Código:
create database miBaseDeDatos
Luego ejecutas la siguiente consulta sql:
Código:
CREATE TABLE `usuarios` ( 
  `idusuario` INT(11) NOT NULL AUTO_INCREMENT, 
  `usuario` VARCHAR(20) NOT NULL, 
  `password` VARCHAR(10) NOT NULL, 
  PRIMARY KEY  (`idusuario`) 
)
Ahora creamos un archivo llamado conexion.php, para conectar la base de datos, en el que incluiremos este código:
Código PHP:
<?php 
// datos para la coneccion a mysql 
define('DB_SERVER','localhost'); 
define('DB_NAME','TU_BASE_DE_DATOS'); 
define('DB_USER','TU_USUARIO'); 
define('DB_PASS','TU_CLAVE'); 

$con mysql_connect(DB_SERVER,DB_USER,DB_PASS); 
mysql_select_db(DB_NAME,$con); 
?>
Ahora creamos otro archivo llamado logout.php, para que nuestros usuarios se puedan desconectar:
Código PHP:
<?php 
    session_start
(); 
    
session_destroy(); 
  
    
header('location: index.php'); 
?>
Y por último crearemos el index.php, en el que incluiremos:
Código PHP:
<?php 
session_start
(); 
include_once 
"conexion.php"
  
function 
verificar_login($user,$password,&$result) { 
    
$sql "SELECT * FROM usuarios WHERE usuario = '$user' and password = '$password'"
    
$rec mysql_query($sql); 
    
$count 0
  
    while(
$row mysql_fetch_object($rec)) 
    { 
        
$count++; 
        
$result $row
    } 
  
    if(
$count == 1
    { 
        return 
1
    } 
  
    else 
    { 
        return 
0
    } 

  
if(!isset(
$_SESSION['userid'])) 

    if(isset(
$_POST['login'])) 
    { 
        if(
verificar_login($_POST['user'],$_POST['password'],$result) == 1
        { 
            
$_SESSION['userid'] = $result->idusuario
            
header("location:index.php"); 
        } 
        else 
        { 
            echo 
'<div class="error">Su usuario es incorrecto, intente nuevamente.</div>'
        } 
    } 
?> 
  
<style type="text/css"> 
*{ 
    font-size: 14px; 

body{ 
background:#aaa; 

form.login { 
    background: none repeat scroll 0 0 #F1F1F1; 
    border: 1px solid #DDDDDD; 
    font-family: sans-serif; 
    margin: 0 auto; 
    padding: 20px; 
    width: 278px; 
    box-shadow:0px 0px 20px black; 
    border-radius:10px; 

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" ></div> 
    <div><label>Password</label><input name="password" type="password"></div> 
    <div><input name="login" type="submit" value="login"></div> 
</form> 
<?php 
} else { 
    echo 
'Su usuario ingreso correctamente.'
    echo 
'<a href="logout.php">Logout</a>'

?>
Y ya está.