Repaso de la arquitectura MVC en PHP e implementacion de WebSockets del lado del servidor y del cliente.
Esto se acerca en la ruta C:\Windows\System32\drivers\etc hosts 127.0.0.1 crud.local.com 127.0.0.1 jobtest.localhost.com
Es necesario que la arquitectura de los archivos sea la siguiente:
|---CARPETA
|----controllers
|----models
|----views
|----index.phpPrimero implementamos el index.php, en este verificamos que tenemos inicado la sesión, en caso de que no lo este la iniciamos esta se puede comprobar con la siguiente código.
//Iniciamos la sesion con session_start()
if(session_status()==PHP_SESSION_NONE){session_start();}
Comprobamos que el usuario esta identificado con la siguiente sentencia:
if(isset($_SESSION['login[status]']) && $_SESSION['login[status]']==1){
require_once('./view/crud/crud.php');
die();
}
Los primeros pasos a realizar es el login y registro del usuario. Por ejemplo, todo debe de estar anidado con el controlador, modelo y vista.
Por ejemplo el usuario realizar una peticion de entrada o un login. Este se inicia en el index.php posteriomente analiza este codigo.
<?php
/**
* Implementamos las librerias o clases necesarias
* Implementamos el controlador del usuario
*/
require_once('./controller/login.controller.php');
$User=new LoginController();
//Iniciamos la sesion con session_start()
if(session_status()==PHP_SESSION_NONE){session_start();}
//Verificamos si se ha creado el login de session, que es un
//array
if(isset($_SESSION['info_user']) && $_SESSION['info_user[status]']==1){
require_once('./view/crud/crud.php');
die();
}else if(isset($_REQUEST['register'])){
$User->userRegister();
}else{
//Si no cumple la condicion iniciamos
$User->LoginEnter();
}
Si no cumple con algunas de las condiciones le redirigimos a la funcion LoginEnter(), este se encarga de controlar la entrada de datos del usuario. Y para redigir a la vista del login, si existe un cambio y no concuerda con el código.
LoginEnter() como bien hemos dicho es el controlador, del usuario.
public function LoginEnter(){
//Verficamos si se encuentra en la base de datos
$checked=false;
if(!empty($_REQUEST['email']) && isset($_REQUEST['email'])){
$_SESSION['login']['email']=$_REQUEST['email'];
$checked=true;
}else{
$checked=false;
}
if(!empty($_REQUEST['password']) && isset($_REQUEST['password'])){
$checked=true;
}else{
$checked=false;
}
if($checked && $this->ObjUser->checked_login($_REQUEST)){
require_once('./view/crud/crud.php');
die();
}
require('./view/login/login.view.php');
die();
}
