Foros del Web » Programando para Internet » PHP »

Login con base de datos externa

Estas en el tema de Login con base de datos externa en el foro de PHP en Foros del Web. Hola, soy nuevo por aqui y necesito ayuda para poder programar un Login en php que inicie sesión con un usuario y password de una ...
  #1 (permalink)  
Antiguo 30/05/2014, 11:27
 
Fecha de Ingreso: mayo-2014
Mensajes: 3
Antigüedad: 10 años
Puntos: 0
Busqueda Login con base de datos externa

Hola, soy nuevo por aqui y necesito ayuda para poder programar un Login en php que inicie sesión con un usuario y password de una base de datos externa de mi servidor, y que me llame solo ciertos campos de la base de datos. Les agradezco mucho por la ayuda, espero haberme hecho entender.
  #2 (permalink)  
Antiguo 31/05/2014, 03:32
 
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á.
  #3 (permalink)  
Antiguo 31/05/2014, 05:57
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Login con base de datos externa

Si la base de datos está en otro servidor y puedes acceder a este por internet:

1- Asegúrate de que el servidor MySQL permita conexiones externas.
- Se requiere habilitar desde el panel de control (WHM/CPanel) o por medio de consola, editando archivos de configuración
- También debes configurar el Firewall para abrir el puerto que usarás, generalmente, 3306
- Y tal vez debas agregar la IP desde la cual te conectarás

2- Al crear la conexión, en lugar de especificar 'localhost' tendrás que usar la IP del servidor donde está la base de datos

El problema sería que no puedas realizar esas configuraciones, lo que te obligaría a crear una API o un webservice.
__________________
- León, Guanajuato
- GV-Foto

Etiquetas: login
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:05.