Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/05/2010, 10:42
negro1985
 
Fecha de Ingreso: febrero-2009
Ubicación: mexico
Mensajes: 148
Antigüedad: 15 años, 2 meses
Puntos: 1
Ayuda con clase para login

tengo la siguiente clase que utilizo para conectarme a la BD

Código:
class Conexion
{
	private $cn;
	private $rs;
		
	public function __construct($serverName = "localhost", $user = "root", $pass = "220785", $db = "login")
	{
		$this->cn = new mysqli($serverName, $user, $pass, $db);
	}
	
	public function dbExecute($query) {
		$this->rs = $this->cn->query($query);	
		return $this->rs;
	}
	
	public function getInsertedId()
	{
		return $this->cn->insert_id;
	}
	
	public function getAffectedRows()
	{
		return $this->cn->affected_rows;
	}
}
pero quieron implementarla para hacer una clase de login, hasta le momento llevo echo esto, pero me falta mucho por hacer

Código:
class Login
{
    private $usuario;
    private $pass;
    private $cn;

    public function __construct()
    {
        $this->cn = new Conexion();
    }

    private function clean($value)
    {
        if (get_magic_quotes_gpc()) {
            $value = stripslashes($value);
        }
        $value = mysql_real_escape_string(htmlspecialchars($value));
        return $value;
    }

    public function comprueba($usuario, $pass)
    {
        $usuario = $this->clean($usuario);
        $pass = $this->clean(md5($pass));

        $query = "SELECT username,password FROM login WHERE username='$usuario' AND password='$pass'";
        
        return $this->cn->dbExecute($query);
    }
}
Esta clase la utilizo asi

Código:
$consulta = new Login();
$rs = $consulta->comprueba("admin", "root");
$row=$rs->fetch_assoc();
echo $row["username"];
echo $row["password"];
me trae el resultado de la consulta, habia pensado poner ahi todo lo del login pero a mi parecer estaria incorrecto hacerlo asi, ya que yo solamente quiero que en la instancia de la clase ponga usuario, contraseña y el nivel del usuario para que comprube los datos y me cree la sesion correspondiente a cada usuario