PHP - login PDO MVC

 
Vista:
Imágen de perfil de Sook
Val: 13
Ha aumentado su posición en 14 puestos en PHP (en relación al último mes)
Gráfica de PHP

login PDO MVC

Publicado por Sook (9 intervenciones) el 16/03/2017 23:11:42
buenas tardes

les comento estoy haciendo un CRUD en PHP con MVC (), obvio estoy aprendiendo como se hace... y realmente el CRUD ya lo tengo, pero a la pagina (que es un ejercicio para la el curso) tengo que ponerle un login y no logro hacer que funcione, y es que nada de lo que veo en los tutoriales se parece a lo que yo tengo y usan otras cosas raras que no comprendo (y que no se si es obligatorio usar, como si tengo que hacerlo con javascript o ajax, o no se), y no se donde mas buscar, así que les agradezco al que me pueda echar una mano...

Vista
aqui esta el formulario de ingreso de usuario (correo electrónico) y contraseña

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<li class="dropdown">
    <button type="button" id="dropdownMenu1" data-toggle="dropdown" class="btn btn-info navbar-btn dropdown-toggle"><i class="glyphicon glyphicon-user"></i> Login <span class="caret"></span></button>
    <ul class="dropdown-menu">
      <li style="width: 270px;">
            <form class="navbar-form form" role="form" action="?c=login&m=data_validate" method="POST">
                <div class="form-group">
                  <div class="input-group">
                        <span class="input-group-addon"><i class="glyphicon glyphicon-user color-blue"></i></span>
 
                        <input id="emailInput" placeholder="Usuario" class="form-control" type="email" name="Email" required="">
                    </div>
                </div>
                <div class="form-group" style="margin-top: 5px">
                    <div class="input-group">
                        <span class="input-group-addon"><i class="glyphicon glyphicon-lock color-blue"></i></span>
 
                        <input id="passwordInput" placeholder="Contraseña" class="form-control" type="password" name="Password"  required="">
                    </div>
                </div>
 
                <div class="form-group">
 
                    <button type="submit" class="btn btn-primary form-control" style="margin-top: 5px">Ingresar</button>
                </div>
                <div class="form-group">
 
                    <span class="pull-right"><a href="#">¿Olvido su contraseña?</a></span>
                </div>
            </form>
        </li>
    </ul>
</li>

Controlador

aqui, es donde estoy totalmente perdida, no se como hacerle para que me valide los usuarios y lo que hecho es mero ensayo y error, lo que tengo mas o menos claro es lo siguiente

se supone que la función data_validate compara si los datos obtenidos son correctos y envia al usuario a la pagina correspondiente. pero esa comparación no le he podido hacer (es con if, ya me lo han dicho pero no me funciona)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public function data_validate(){
 
	if(isset($_POST['Email']) && isset($_POST['Password'])){
 
 
foreach ($this->model->validar_usuario($_POST['email'], $_POST['password']) as $r) {
 echo $r->id;
    echo $r->Nombre;
    echo $r->Apellido;
 
 
}// fin foreach
 
$stm= new security();
$stm->iniciarSesion($r->Nombre, $r->Apellido, $r->email);
 
	}// fin if
 
}// fin function data_validate

con esto se controla la conexion (inicio, salir y validar)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
 
class securityController{
private $model;
 
   public function __construct(){
      $this->model = new security();
 
    }
 
    public function data(){
 
        $this->model->iniciarsesion($_POST['email'],$_POST['password']);
   }
 
    public function cerrarsalir(){
 
        $this->model->salir();
    }
 
}

model
buscar en la base datos (sin lio)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public function validar_usuario($email,$password){
 
try {
 
	$result=array();
	$stm=$this->pdo->prepare("SELECT * FROM usuario WHERE email='$email'");
	$stm->execute();
 
	return $stm->fetchAll(PDO::FETCH_OBJ);
 
 
	} catch (Exception $e) {
 
	die($e->getMessage());
}// fin try catch
}// fin function validar_usuario

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
 
class security{
 
    public function iniciarsesion($email,$password){
 
        $_SESSION['correo_si']=$email;
        $_SESSION['password_si']=$password;
 
    }
    public function salir(){
 
        session_destroy();
        header('location:?c=index&m=index');
 
    }
    public function validar_sesion(){
      if(isset($_SESSION['correo_si'])){
           echo "bien"; // es es solo prueba
       } else{
           header('location:?c=index&m=index');
       }
    }
 
}

espero que me haya explicado bien, y que me puedan ayudar, gracias por el tiempo destinado a colaborarme...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

login PDO MVC

Publicado por JUAN LUNA (1 intervención) el 31/01/2019 20:40:44
Hola, lograste resolverlo??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar