Para crear páginas web en php rápidamente mediante un framework, vamos a explicar cómo instalar uno de los más conocidos: Yii Framework.
Antes de empezar tenemos que tener instalado y configurado un XAMPP, para poder tener nuestras páginas en local. A partir de ahí ya podemos empezar a hacer páginas web en PHP.
En primer lugar vamos a dirigirnos al enlace de Yii Framework, para descargarnos el framework a usar en “Download Yii“. Nosotros nos hemos creado dentro de htdocs una carpeta llamada TestYii que es donde descomprimimos lo que acabamos de descargarnos, para ver que todo está correctamente escribimos en el navegador la siguiente ruta: http://localhost/testYii/requirements/index.php en la cual podemos ver si lo que acabamos de copiar y nuestra configuración XAMPP es correcta para este framework de php. Esta carpeta es donde tenemos el framework inicial para todas nuestras futuras páginas web en php.
Lo segundo es generar nuestra primera aplicación web de pruebas, para ello si estamos en windows, tenemos que entrar en la consola de comandos [Nos dirigimos a Inicio-> Ejecutar -> Escribimos "cmd" sin las comillas y debería aparecernos]. A continuación dentro de la consola tenemos que ir a la ruta del framework que acabamos de instalar. En nuestro caso escribiremos “cd C:\xampp\htdocs\TestYii\framework\”, sin las comillas, desde aquí y mediante la siguiente línea de comandos podremos crear automáticamente los archivos para iniciar nuestra aplicación web:
yiic webapp C:\xampp\htdocs\AppYii\
Con esta línea crearemos una carpeta llamada AppYii(o como queramos llamarle), con los archivos necesarios para ir empezando a crear páginas web en php. Podemos comprobar que todo ha ido correctamente desde el navegador mediante la ruta: http://localhost/AppYii/ donde veremos algo como en la imagen de cabecera de esta noticia. Podéis ver que ya hay ciertas cosas generadas automáticamente con código incluído.
En tercer lugar vamos a meternos con la base de datos, os recomiendo que creeis en primer lugar vuestro Entidad-Relación, para ello nosotros hemos usado la aplicaciónMysql Workbench, desde la cual una vez generado vuestro diagrama correctamente podéis exportarlo a sentencias SQL para generar vuestra base de datos mediante phpmyadmin.
A continuación podemos ver la estructura que se ha generado y que compartirán inicialmente todas nuestras páginas web en php:
testdrive/
index.php archivo de entrada de la aplicación Web
assets/ contiene archivos de recursos públicos
css/ contiene archivos CSS
images/ contiene archivos de imágenes
themes/ contiene temas de la aplicación
protected/ contiene los archivos protegidos de la aplicación
yiic script de linea de comandos yiic
yiic.bat script de linea de comandos yiic para Windows
commands/ contiene comandos ‘yiic’ personalizados
shell/ contiene comandos ‘yiic shell’ personalizados
components/ contiene componentes reusables
MainMenu.php clase de widget ‘MainMenu’
Identity.php clase ‘Identity’ utilizada para autenticación
views/ contiene los archivos de vistas para los widgets
mainMenu.php el archivo vista para el widget ‘MainMenu’
config/ contiene archivos de configuración
console.php configuración aplicación consola
main.php configuración de la aplicación Web
controllers/ contiene los archivos de clase de controladores
SiteController.php la clase controlador predeterminada
extensions/ contiene extensiones de terceros
messages/ contiene mensajes traducidos
models/ contiene archivos clase de modeloscontaining model class files
LoginForm.php el formulario modelo para la acción ‘login’
ContactForm.php el formulario modelo para la acción ‘contact’
runtime/ contiene archivos temporarios generados
views/ contiene archivos de vista de controladores y de diseño
layouts/ contiene archivos de diseño
main.php el diseño default para todas las vistas
site/ contiene archivos vista para el controlador ‘site’
contact.php contiene la vista para la acción ‘contact’
index.php contiene la vista para la acción ‘index’
login.php contiene la vista para la acción ‘login’
system/ contiene archivos de vista del sistema
De toda esta estructura, nos interesa abrir el archivo que se encuentra en la carpeta \protected\config\main.php, y descomentar las siguientes líneas de código:
/*
'db'=>array(
'connectionString' => 'mysql:host=localhost;dbname=NombreBaseDatosCreada',
'emulatePrepare' => true,
'username' => 'root',
'password' => '',
'charset' => 'utf8',
),
*/
Podemos indicar los datos de conexión a nuestra base de datos, nombre de usuario y contraseña que tenemos configurado en nuestro XAMPP, con esto ya podría tener acceso nuestra aplicación web a la base de datos que tenemos creada.
En quinto lugar vamos a generar los modelos y el CRUD (Create, Read, Update y Delete) de cada uno de ellos en nuestra aplicación web en php, esta parte es la mejor y donde comprobaremos lo que ahorraremos en el inicio de la programación de páginas web en php. En este paso podemos volver a usar el comando que hemos visto con anterioridad llamado Yiic para automatizar la generación de código o scaffolding, pero yo me voy a centrar en otra manera más fácil e intuitiva que es en la herramienta Gii que viene con Yii Framework.
Esta herramienta hay que activarla, para ello tenemos que ir al mismo archivo que hemos modificado anteriormente main.php y descomentar las siguiente líneas de código e introducir una contraseña nueva:
Esta herramienta hay que activarla, para ello tenemos que ir al mismo archivo que hemos modificado anteriormente main.php y descomentar las siguiente líneas de código e introducir una contraseña nueva:
'gii'=>array(
'class'=>'system.gii.GiiModule',
'password'=>'gii123',
// If removed, Gii defaults to localhost only. Edit carefully to taste.
'ipFilters'=>array('127.0.0.1','::1'),
),
Para comprobar que todo ha ido bien, iremos al navegador y escribiremos: http://localhost/AppYii/index.php?r=gii, nos pedirá introducir la contraseña que hemos metido con anterioridad, en nuestro caso gii123 y ahora solo queda empezar a crear los objetos que con anterioridad hemos creado mediante nuestro Entidad-Relación en Mysql. Todos estos pasos serían un buen método de desarrollo a repetir en todas nuestras páginas web en php. Para ello tenemos que entrar en la opción “Model Generator“, introducir los datos de nuestra base de datos “db” y el nombre de tabla y luego los modelos (normalmente las tablas las ponemos en plural y los modelos en singular), presionamos en botón “Preview” y si todo ha ido correctamente podremos presionar el botón “Generate” para confirmar la creación de nuestro modelo, este paso lo repetiremos con todos nuestros modelos. Podemos ver como se han generado todos los modelos en la siguiente carpeta: protected\models\.
Ahora que tenemos los modelos, vamos a generar el CRUD de cada uno de ellos, entrando en la opción “Crud Generator“, en nuestro caso mantendremos los nombres que usamos para los modelos en el campo de ID, podemos ir viendo que lo que estamos generando está activo vía web: http://localhost/appYii/index.php?r=nombremodelo y veremos que hay código ya creado automáticamente para dar de alta, leer, modificar y borrar cada uno de los modelos.
A partir de aquí, ya tenemos bastante trabajo hecho por adelantado para nuestras futuras páginas web en php con unos cuantos clicks.
lo generado terminará así :
lo generado terminará así :
testdrive/ index.php archivo de entrada de la aplicación Web assets/ contiene archivos de recursos públicos css/ contiene archivos CSS images/ contiene archivos de imágenes themes/ contiene temas de la aplicación protected/ contiene los archivos protegidos de la aplicación yiic script de linea de comandos yiic yiic.bat script de linea de comandos yiic para Windows commands/ contiene comandos 'yiic' personalizados shell/ contiene comandos 'yiic shell' personalizados components/ contiene componentes reusables MainMenu.php clase de widget 'MainMenu' Identity.php clase 'Identity' utilizada para autenticación views/ contiene los archivos de vistas para los widgets mainMenu.php el archivo vista para el widget 'MainMenu' config/ contiene archivos de configuración console.php configuración aplicación consola main.php configuración de la aplicación Web controllers/ contiene los archivos de clase de controladores SiteController.php la clase controlador predeterminada extensions/ contiene extensiones de terceros messages/ contiene mensajes traducidos models/ contiene archivos clase de modeloscontaining model class files LoginForm.php el formulario modelo para la acción 'login' ContactForm.php el formulario modelo para la acción 'contact' runtime/ contiene archivos temporarios generados views/ contiene archivos de vista de controladores y de diseño layouts/ contiene archivos de diseño main.php el diseño default para todas las vistas site/ contiene archivos vista para el controlador 'site' contact.php contiene la vista para la acción 'contact' index.php contiene la vista para la acción 'index' login.php contiene la vista para la acción 'login' system/ contiene archivos de vista del sistema
Buen Post, puedo conectarme a una base de datos de microsoft access, es que tengo un software que utiliza dicha base de datos y quiero trabajar con yii sobre ella. Se puede? Como??? Gracias.
ResponderEliminar