Crear bundles en Symfony2
Dic26

Crear bundles en Symfony2

Los bundles en Symfony2 son módulos o paquetes que nos permiten dividir nuestra aplicación en varias partes reutilizables. De forma que si tenemos una tienda online que además tiene un foro y un blog, podríamos tener un bundle para la tienda, otro para el foro y otro para el blog dentro del mismo proyecto de Symfony. Crear más o menos bundles depende de cada uno. En Symfony2 toda nuestra...

Leer más
Instalar Symfony2
Dic25

Instalar Symfony2

Veamos como instalar Symfony2 en Wamp, el proceso en Linux es más sencillo. En primer lugar debemos tener instalado: Un servidor de aplicaciones web en mi caso tengo Wamp en Windows. Debemos añadir al path la ruta del ejecutable de PHP. Composer para descargar y gestionar las dependencias del Framework. En su instalación solamente hay que indicarle la ruta del ejecutable de PHP y lo demás siguiente siguiente. GIT,...

Leer más
Subir ficheros en Yii Framework
Oct11

Subir ficheros en Yii Framework

Veamos como subir ficheros en Yii framework. El controlador: public function actionIndex(){ $form=new UsuariosForm(); if(isset($_FILES["UsuariosForm"])){ //Instanciamos el subidor para el campo fichero del formulario $file=CUploadedFile::getInstance($form,"fichero"); //Nombre del fichero $name=time()."-".$file->getName(); //$file->getExtensionName() //Permitimos tres tipos de fichero if($file->getExtensionName()=="png" || $file->getExtensionName()=="pdf" || $file->getExtensionName()=="zip"){ //Guardamos el fichero $file->saveAs(Yii::getPathOfAlias("webroot")."/uploads/".$name); }else{ //Crear mensaje flash Yii::app()->user->setFlash('mensaje','Solo ficheros png, pdf o zip'); //Refrescamos pantalla $this->refresh(); } } $this->render('index',array( "form"=>$form )); } La vista: <h1>Subir ficheros con Yii</h1>...

Leer más
CRUD con Yii Framework
Oct04

CRUD con Yii Framework

Vamos a ver como hacer un CRUD con Yii Framework (Create,Read,Update,Delete) de una tabla de la BD pruebas llamada usuarios con las columnas id,email,password,nombre,apellido. El formulario: <?php class UsuariosForm extends CFormModel{ //Campos que tendrá el formulario public $nombre; public $apellido; public $password; public $email; //Reglas de validación public function rules(){ return array( //Estos campos serán obligatorios array('nombre, email, password,apellido', 'required', "message"=>"Este campo es obligatorio"), //Validando el nombre con una...

Leer más
Validar datos fuera de formularios en Yii
Oct04

Validar datos fuera de formularios en Yii

Esta forma de validar es muy similar a como lo hace Codeigniter, es muy sencilla, y puede ser muy útil cuando los formularios por cualquier cuestión han sido creados manualmente o nos interesa validar algún dato aislado. Tenemos en una vista un formulario creado “a mano”: <form action="" method="post"> Email: <input type="email" name="email" value=""/> <input type="submit" name="enviar" value="Enviar"/> </form> Y validamos los datos en el controlador creando el objeto...

Leer más
Crear el formulario solo con validación en el servidor en Yii
Sep27

Crear el formulario solo con validación en el servidor en Yii

Utilizamos el modelo visto anteriormente. La vista usuarios: <h1>Formularios en Yii Framework</h1> <div class="form col-lg-10"> <?php $model=$formulario; //Formulario con validación en backend echo CHtml::beginForm(); ?> <?php //echo CHtml::errorSummary($model); ?> <div class="row"> <?php echo CHtml::activeLabel($model,'nombre'); ?> <?php echo CHtml::activeTextField($model,'nombre',array("class"=>"form-control")) ?> <?php echo CHtml::error($model,'nombre'); ?> </div> <div class="row"> <?php echo CHtml::activeLabel($model,'apellido'); ?> <?php echo CHtml::activeTextField($model,'apellido',array("class"=>"form-control")) ?> <?php echo CHtml::error($model,'apellido'); ?> </div> <div class="row"> <?php echo CHtml::activeLabel($model,'email'); ?> <?php echo CHtml::activeEmailField($model,'email',array("class"=>"form-control")) ?>...

Leer más
Crear el formulario con validación en el cliente y servidor en Yii
Sep27

Crear el formulario con validación en el cliente y servidor en Yii

Utilizamos el modelo del tutorial anterior. Hay que añadir esta hoja de estilos a la plantilla que utilizamos: <!--Validación formularios front-end--> <link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->request->baseUrl; ?>/css/form.css" /> La vista usuarios: <h1>Formularios en Yii Framework</h1> <div class="form col-lg-10"> <?php //Formulario con validación en frontend y backend $model=$formulario; $form=$this->beginWidget('CActiveForm',array( "method"=>"POST", "action"=>"", "enableClientValidation"=>true, "clientOptions"=>array( "validateOnSubmit"=>true, "validateOnChange"=>true, "validateOnType"=>true ) )); ?> <!--Este metodo imprime un resumen de los errores del formulario-->...

Leer más
Modelos en Yii Framework
Sep20

Modelos en Yii Framework

Hay dos tipos de modelos en Yii Framework, los modelos de interacción con la base de datos y los modelos de formulario. Vamos a ver el primer tipo de modelo. Lo ideal como en todos los frameworks es utilizar de forma estricta el ORM que estos incluyen, en el caso de Yii Active Record, de forma que cada modelo que creamos represente a una tabla de la base de...

Leer más
Conexión a la base de datos en Yii
Sep13

Conexión a la base de datos en Yii

Para configurar la conexión a la base de datos en Yii Framework, tenemos que definir un array en el fichero de configuración principal de la aplicación. Yii nos da la posibilidad de conectarnos a diferentes tipos de sgbd, para ello incluye drivers para MySQL, SQLite y PostgreSQL. Estos son los diferentes strings de conexión: SQLite: sqlite:/path/to/dbfile MySQL: mysql:host=localhost;dbname=testdb PostgreSQL: pgsql:host=localhost;port=5432;dbname=testdb Ejemplo de conexión a la base de...

Leer más
Conseguir información del cliente con ChttpRequest en Yii
Sep13

Conseguir información del cliente con ChttpRequest en Yii

Esto no es más que una serie de métodos que trabajan con variables superglobales especialmente con $_SERVER. Veamos un ejemplo de su uso en una vista. <h1>CHttpRequest $_SERVER en Yii</h1> <ul class="list-group"> <li class="list-group-item"><?php echo Yii::app()->request->baseUrl //URL base ?></li> <li class="list-group-item"><?php echo Yii::app()->request->requestUri //URL solicitada?></li> <li class="list-group-item"><?php echo Yii::app()->request->pathInfo //Acción en la que estamos?></li> <li class="list-group-item"><?php echo Yii::app()->request->urlReferrer //De donde vengo?></li> <li class="list-group-item"><?php echo Yii::app()->request->userAgent //Navegador y sistema del...

Leer más
Redireccionar en Yii
Sep05

Redireccionar en Yii

Vamos a ver las diferentes opciones que tenemos para redireccionar en Yii. Las redirecciones forman parte del componente controller. En cualquier controlador por un lado podemos redireccionar: $this->redirect(Yii::app()->request->baseUrl."/holamundo"); O bien refrescar:...

Leer más
Crear helpers en Yii
Sep05

Crear helpers en Yii

Veamos como crear helpers en Yii. Lo recomendable es crear el fichero protected/components/helpers.php y ahí crear todas las funciones helper que necesitemos. El siguiente paso será incluir este archivo de helpers en el fichero de principal de configuración justo antes del array de configuración, de esta forma: //Cargar helpers require_once( dirname(__FILE__) . ‘/../components/helpers.php’); Ejemplo: <?php // protected/components/helpers.php // Aqui van los helpers //Comprobar que no existe la función if(!function_exists("imprimirTiempo")){...

Leer más