Yo en el controlador me e creado una clase para la vista
CONTROLADOR
Código PHP:
<?php
/**
* Controller
**/
class Usuarios_controller{
private $userid;
private $user;
public $texto_user_no;
public function login( $user ,$password) {
require_once(RUTA_models."portada/usuarios.php");
require_once(RUTA_models."portada/usuarios_model.php");
require_once(RUTA_lib."class_views.php");
$user = new Usuarios_model($_POST[user],$_POST[password]);
$userid = $user->validateUser();
$view = new views();
if($userid == 0 ){
//******************************************
// empty=FALSE;isset=TRUE
if ((empty($_POST[user]) or empty($_POST[password])) and isset($_POST[xs])){
ob_start();
require_once(RUTA_helpers."portada/portada.php");
$this->texto_user_no = ob_get_clean();
}
//******************************************
$view->view(RUTA_views."portada/sin_loginear.php");
}else{
$view->view(RUTA_views."portada/logineado.php");
}
}
}
?>
En la clase vista es donde pondre todo el objeto vista.
Código PHP:
<?php
class views{
public $ruta;
private $rutaBase;
private $rutaView;
function __construct(){ // funcion Constructora
// this-> hace referencia a un elemento de esta clase
$this->rutaView= DOMINIOx.RUTA_views;
}
function view($ruta){
$this->ruta = $ruta;
require_once(RUTA_layouts."cabecera.php");
require_once("$this->ruta");
require_once(RUTA_layouts."pie.php");
}
}
?>
Como veis ejecuta una cabecera con html, metas etc etc y en el pie </body></html>, en la variable $this->ruta donde tendre toda la vista html.
Pero en el controlador tengo que enviar un aviso a la vista html.
Código PHP:
ob_start();
require_once(RUTA_helpers."portada/portada.php");
$this->texto_user_no = ob_get_clean();
Como pasar la variable $this->texto_user_no en la clase views para poner avisos, etc etc sobre la plantilla vista???
Gracias.