Ver Mensaje Individual
  #9 (permalink)  
Antiguo 04/01/2013, 11:02
gmjun2000
 
Fecha de Ingreso: julio-2012
Mensajes: 4
Antigüedad: 11 años, 9 meses
Puntos: 1
Respuesta: modelo vista controlador y ajax

Hola Montes28, entiendo lo quieres hacer, con un diseño de 3 capas presentacion, dominio y persistencia, la parte de la validacion de los datos puedes hacerla mediante javascript, con algunas condiciones, esto para que los datos puedan ser enviados correctamente , aqui termina la capa de presentacion, aqui enviamos lo datos con Ajax..

un ejemplo facil de validacion usando javascript
if(elNombre.value == ''){
document.getElementById('error_nombre').innerHTML = "Falta nombre";
}

etcc....

Código Javascript:
Ver original
  1. $.ajax({
  2.     type: "POST",
  3.     url: "index.php",
  4.     data: {controller:"login_", accion: "login_users"}
  5.     })

ahora vamonos a la capa de dominio o logica, es donde obtienes los datos enviados desde la presentacion:
//Si estas utilizando una function lo mas correcto deberia ser que pongas fuera los require_once y el $_POST pasarlo por parametro luego llamarlo

Código Javascript:
Ver original
  1. function login_users($_POST['commit']);

en el $_POST al ser un arreglo debes decirle asi $_POST['commit'] aunque no es necesario ya que el evento fue dado por la capa de presentacion y validar si se hace post ya no es necesario.. el evento fue dado por javascript aqui estas listo simplemente para recibir datos..



require 'models/conexion.php';
require 'models/login_Model.php';

function login_users($datos)

{


if(isset($datos))//esta condicion es innecesaria
{
/*aqui persistencia deberias xcrear una funcion que te haga las conexiones previas y valide si conecta o no para no estar poniendolo en todas las veces que lo necesites*/

$lc=new Conexion();
$db = $lc -> conectar();

if (empty($db)){


header("Refresh: 0; URL=/volcanicos/views/error.php");
die();
}else{
$ls = new Login();
$ls -> validate_users($db);
}
}

//require 'views/login.php';
require 'barra.html';//aqui deberia ser include() no require...
}

Espero te sirva