Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/10/2012, 12:21
Montes28
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 13 años, 7 meses
Puntos: 6
Problema para logear contra usuarios de base de datos y no contra usuarios almacenado

hola amigos espero me puedan ayudar .

tengo una aplicacion web a la cual para ingresar se autentica contra una tabla de la base de datos (usuarios almacenados en la base de datos en la tabla usuarios) y ahora requiero autenticar contra la base de datos(usuarios de bases de datos). hasta el momento solo tengo un usuario de la base de datos

estoy utilizando PDO y postgresql

en mi idex.php tengo

Código PHP:
Ver original
  1. require_once( dirname(__FILE__) . '/config/conexion.php' );
  2.  
  3. /*directorio donde estan los controladores/*/$dirControllers = "controllers/";
  4. /*controlador por defecto*/$controlDefault = "login_";
  5. /* accion por defecto*/$accionDefault = "menu_users";


este es el archivo donde se encuentra en controlador por defecto
login_Controller.php y contiene esto

/*------------------ Funcion Login Usuarios ------------------*/
function login_users()
{
require 'models/login_Model.php';

if($_POST)
{
$ls = new Login();
$ls -> validate_users($db);
}

require 'views/login.php';
}

para trabajar esta funcion require login_Model.php y contiene lo siguiente

Código PHP:
Ver original
  1. global $servidor, $bd, $usuario, $contrasenia;
  2.     $db = new PDO('pgsql:host=' . $servidor . ';dbname=' . $bd, $usuario, $contrasenia);
  3.  
  4.     class Login
  5.     {
  6.         /*-----------------------------------------  Validar Usuarios -----------------------------------------*/
  7.         public function validate_users($db)
  8.         {
  9.        
  10.             $usuario = $_POST['usuario'];
  11.             $clave = $_POST['clave'];
  12.        
  13.             $consulta = $db->prepare("select usu_usuario, usu_clave from usuarios where usu_usuario='$usuario' and usu_clave='$clave' and usu_estado = 1");
  14.             $consulta->execute();
  15.            
  16.             $count = $consulta->rowCount();
  17.  
  18.             if($count==1){
  19.             $_SESSION['nombre'] = $_POST['usuario'];
  20.             $_SESSION['clave'] = $_POST['clave'];
  21.             header("Refresh: 0; URL=/volcanicos/");
  22.             }
  23.             else {
  24.             //echo "usuario o contraseña incorrecta";
  25.             header("location:views/login_error.php");
  26.             }
  27.         }

en conexion.php

Código PHP:
Ver original
  1. <?php
  2.  
  3.     $servidor = 'localhost';
  4.     $bd = 'volcanoes';
  5.     $usuario = 'postgres';
  6.     $contrasenia = '*****';
  7.    
  8. ?>