/** * Método que llama a la vista del formulario de alta de Empresas * y que realiza la lógica de la inserción de empresas */ public function crear() { if (!$_POST) { $datos = ['titulo' => 'Creación de empresa']; echo $this->view->render("empresa/formularioEmpresa", $datos); } else { // creamos un bloque TRY - CATCH para preveer errores SQL try { // Comprobamos $_POST if (EmpresaModel::alta($_POST)) { // Generamos el mensaje de que se ha creado apropiadamente Session::add('feedback_positive', 'La empresa se a creado satisfactoriamente'); // comprobamos si tiene un origen, de ser asi lo enviamos al origen // en caso contrario lo redreccionamos a / if ($origen = Session::get('origen')) { Session::set('origen', null); header('Location:' . $origen); exit; } else { //Existe un fedback_positive desde el modelo //para mostrar en home header('Location: /Empresa#' . $_POST['last_id']); exit; } } else { // existen errores, llamamos a la vista para mostrar los errores // Saneamos $_POST $array = Validaciones::sanearEntrada($_POST); $datos = ['datos' => $array]; // mostramos la vista con los datos saneados, // para evitar la inyeción de código echo $this->view->render('empresa/formularioEmpresa', $datos); } } catch (PDOException $e) { // llamamos a la vista de error 500 $array = ['msg' => 'Error del servidor, disculpe las molestias.']; echo $this->view->render('error/error500', $array); // modo debbug ON /*echo '<pre>'; echo $e->getMessage();*/ } } }