Comunidad de diseño web y desarrollo en internet online

PHP POO - Es correcto el login de esta forma?

Citar            
MensajeEscrito el 25 Oct 2013 11:04 pm
Hola,
me estoy iniciando en php poo y me estoy actualizando en PDO, ya que hace rato no me sentaba a codificar.

Ok, estoy haciendo un pequeño login de usuario para practicar y queria saber lo siguiente.

Dos consultas:

1- Explico un poco: hice la clase Usuarios donde se valida el usuario y clave q se introdujo en el form.
Lo q hago es verificar q el usuario existe con un método, y con otro método termino de completar el login.
Por q hago esto?, porq después del login quiero pasar a hacer el registro, entonces con ese método verifico si el usuario existe o no, entonces se insertan los datos a la tabla.

2- Como verán, en el método existeUsuario, verifico si existe el user y pass usando rowCount() y retorna true... eso es suficiente para comprobar?, o tambien tendria q hacer un fetch para obtener los datos del usuario?

Esto es lo q hice:

Código PHP :


<?php
require_once('Conexion.php');

class Usuario{

    private $_db;

    public function __construct(){

        $this->_db = new Conexion();
        $this->_db = $this->_db->conectar();
    }

    
    public function login($user, $pass){
        
        if($this->existeUsuario($user, $pass) == TRUE){
            
             //session_start();
             echo "Hola ".$user;

        }else{

            echo "No pasa nada";

        }
    }

    private function existeUsuario($user, $pass){

        $this->_usuario = $user;
        $this->_password = $pass;
        
        $con = $this->_db->prepare("SELECT * FROM usuarios WHERE nombre = ? AND pass = ?");
        $con->bindParam(1, $this->_usuario);
        $con->bindParam(2, $this->_password);
        $con->execute();

        if($con->rowCount() == 1){

            return TRUE;

        }else{
            
            return FALSE;
        }            

            
    }

Por macadam

0 de clabLevel



 

firefox
Citar            
MensajeEscrito el 29 Oct 2013 05:37 pm
yo usaria

SELECT usuario, contrasena ... en ves de SELECT *

y asi ya compruebas mas loco

if $registro[usuario] == $this->usuario and $registro[contrasena] == $this->contrasena

y ya tienes una doble ocmprobacion ;)

Por elporfirio

Claber

652 de clabLevel

1 tutorial

Genero:Masculino  

FullStack Web Developer

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.