Proyecto de ciclo del módulo Desarrollo de Aplicaciones Web, creado en PHP
Tecnologías/Paquetes necesarios para implementar el proyecto.
- Apache (XAMPP/Ampps)
- MySQL/MariaDB
- Node.js/NPM
- PHP 7.x (Comúnmente viene con XAMPP y Ampps)
- Composer (Para instalar PHPMailer)
- Bower
- Cuenta en SendGrid (Para el envío de correos)
Para implementar el MVC es imprescindible crear una estructura de ficheros parecida a esta:
./ #Root
├── .bowerrc # Configuracion de Bower
├── .git # Carpeta git
├── .gitignore # Archivos ignorados por git
├── .htaccess # Configuracion de Apache
├── assets/ # Archivos de configuracion
│ ├── css/ # Hojas de estilos CSS
│ ├── images/ # Imágenes
│ ├── js/ # Scripts JS
│ └── lib/ # Dependencias Front-End
├── bower.json # Listado de paquetes para el Front-End
├── composer.json # Listado de librerias PHP
├── config/ # Archivos de configuracion
│ ├── database.php # Configuración de la DB
│ └── global.php # Variables Globales
├── Controllers/ # Controladores
├── index.php # Controlador frontal
├── Models/ # Modelo de las entidades de la DB
├── package.json # Info del proyecto
├── README.md # Archivo Léeme
├── script_db.sql # DB Backup
├── vendor # Librerias PHP
└── Views/ # Vistas
└── pages/ # Páginas HTML
└── templates/ # Plantillas de vistas
Una vez instalado nodejs
, se instala el paquete bower
y luego con éste se instalan las dependencias del Front-End.
$ npm i bower --save
$ bower i
Info: ¿Cómo instalar NodeJS?
Una vez instalado composer
se procede a instalar phpmailer
.
$ composer require phpmailer/phpmailer
Info: ¿Cómo instalar composer?
Independientemente se tenga MariaDB
o MySQL
, ejecutar el siguiente comando en una consola o terminal:
$ mysql -u root -p db_bolsatrabajo < script_db.sql
Abrir el archivo config/global.php
y cambiar el valor de las Variables Globales:
//DB Config
define('DB_HOST', 'localhost');
define('DB_USER', 'root');
define('DB_PASS', '');
define('DB_NAME', 'db_bolsatrabajo');
//Routes
define('DOMAIN', ''); //Agregar el dominio web
define('BASE_URL', '/');
define('VIEWS_URL', '/Views/');
define('CSS_URL', '/assets/css/');
define('JS_URL', '/assets/js/');
define('IMG_URL', '/assets/images/');
define('LIB_URL', '/assets/lib/');
//PHP Mailer - SMPT Config
define('SMTP_HOST', ''); //Agregar la url del servidor SMTP, ej GMail, SendGrid, etc
define('SMTP_USR', ''); //Agregar el nombre de usuario
define('SMTP_PSW', ''); //Agregar la clave del usuario
define('SMTP_DBG', 0); //SMTP debugging 0 = off (for production use) 1 = client messages 2 = client and server messages
//PHP Mailer - Notifier Config
define('NOTIFY_EMAIL', ''); //Email con que serán enviados los correos desde la página web
define('NOTIFY_NAME', ''); //Nombre del remitente
//PHP Mailer - Webmaster Config
define('WEBMST_EMAIL', ''); //Email de quien recibirá los correos de la página 'Contáctenos'
define('WEBMST_NAME', ''); //Nombre del receptor