<?php
1
class Db{
2
private static $conexion=null;
3
private function __construct(){}
4
5
public static function conectar(){
6
$pdo_options[PDO::ATTR_ERRMODE]=PDO::ERRMODE_EXCEPTION;
7
self::$conexion=new
8
PDO('mysql:host=localhost;dbname=baselogin','root','root123456',$pdo_options);
9
return self::$conexion;
10
}
11
}
12
?>
1 <?php
2 require_once('conexion.php');
3 require_once('usuario.php');
4
5 class CrudUsuario{
6
7 public function __construct(){}
8
9 //inserta los datos del usuario
10 public function insertar($usuario){
11 $db=DB::conectar();
12 $insert=$db->prepare('INSERT INTO USUARIOS VALUES(NULL,:nombre, :clave)');
13 $insert->bindValue('nombre',$usuario->getNombre());
14 //encripta la clave
15 $pass=password_hash($usuario->getClave(),PASSWORD_DEFAULT);
16 $insert->bindValue('clave',$pass);
17 $insert->execute();
18 }
19
20 //obtiene el usuario para el login
21 public function obtenerUsuario($nombre, $clave){
22 $db=Db::conectar();
23 $select=$db->prepare('SELECT * FROM USUARIOS WHERE
24 nombre=:nombre');//AND clave=:clave
25 $select->bindValue('nombre',$nombre);
26 $select->execute();
27 $registro=$select->fetch();
28 $usuario=new Usuario();
29 //verifica si la clave es conrrecta
30 if (password_verify($clave, $registro['clave'])) {
31 //si es correcta, asigna los valores que trae desde la base de datos
32 $usuario->setId($registro['Id']);
33 $usuario->setNombre($registro['nombre']);
34 $usuario->setClave($registro['clave']);
35 }
36 return $usuario;
37 }
38
39 //busca el nombre del usuario si existe
40 public function buscarUsuario($nombre){
41 $db=Db::conectar();
42 $select=$db->prepare('SELECT * FROM USUARIOS WHERE nombre=:nombre');
43 $select->bindValue('nombre',$nombre);
44 $select->execute();
45 $registro=$select->fetch();
46 if($registro['Id']!=NULL){
47 $usado=False;
48 }else{
49 $usado=True;
50 }
51 return $usado;
52 }
53 }
?>