aplicaciones web php y mysql - sdq

15
Aplicaciones web PHP y MySQL Crear aplicaciones web completas y contenido dinámico en las páginas web en conjunto con MySQL. Tales como gestión de usuarios y accesos, administración de contenidos, manipulación de archivos y muchas otras funcionalidades. ¿Qué voy a aprender? PHP Básico Funciones Arrays Cadenas de textos y patrones Programación web Programación orientada a objetos Base de datos: MySQL Diseño de aplicaciones XML y Web Services Seguridad Accesando archivos Este curso está dirigido para Personas con aptitudes lógicas y de pensamiento estructurado. Interesadas en programar aplicaciones web orientada a objetos, trabajar con bases de datos MySQL. diseñadores web con buena base de HTML 5 y CSS 3, programadores y afines.

Upload: others

Post on 03-Jul-2022

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Aplicaciones web PHP y MySQL - SDQ

Aplicaciones webPHP y MySQL

Crear aplicaciones web completas y contenido dinámico en laspáginas web en conjunto con MySQL. Tales como gestión de

usuarios y accesos, administración de contenidos, manipulación dearchivos y muchas otras funcionalidades.

¿Qué voy a aprender?

PHP BásicoFuncionesArraysCadenas de textos y patronesProgramación webProgramación orientada a objetosBase de datos: MySQLDiseño de aplicacionesXML y Web ServicesSeguridadAccesando archivos

Este curso está dirigido paraPersonas con aptitudes lógicas y depensamiento estructurado. Interesadas enprogramar aplicaciones web orientada aobjetos, trabajar con bases de datos MySQL.diseñadores web con buena base de HTML5 y CSS 3, programadores y afines.

Page 2: Aplicaciones web PHP y MySQL - SDQ

“Educaciónmultimediaorientada a

soluciones delmundo real”

Cursos de multimediaSDQ Training Center es un centro decapacitación en software de multimedia.Las clases de multimedia abarca lacreación de gráficos, animación, video,audio y programación. SDQ ofrece lasclases en dos modalidades: como módulosindependientes y como diplomados oespecialidad.

Exámenes de certificaciónAparte de impartir entrenamiento en SDQTraining Center también estamosfacultados para impartir exámenes decertificación. Somos también centro deexámenes autorizado por Pearson Vue yAutodesk Authorized Certification Center.Puedes tomar exámenes de certificación decompañías tales como: Adobe, Autodesk,Cisco entre muchas otras.

Educación orientada a objetivos

Grupos pequeños

Clases en video-tutoriales

Profesores expertos

Cursos actualizados

Diplomas avalados

Trato personalizado

Buen ambiente de Aprendizaje

Page 3: Aplicaciones web PHP y MySQL - SDQ

Aplicaciones webPHP y MySQL

CONTENIDO DE LA CLASE

¿Qué es PHP?Cosas que permite hacer PHP

Veremos que es el PHP, cual es su alcance, que tantascosas podemos hacer con este lenguaje y cuales son suslimitaciones.

Servidor HTTPInstalación de un servidor

Instalaremos el servidor Apache en conjunto con la últimaversión estable de PHP y el servidor MySQL que vienen en el

paquete de XAMPP.

Como es la sintaxis del PHPIntroducción al PHP

Diferentes formas de escribir PHP dentro de un documentoweb. También el uso y la creación de variables, operadores,condiciones, bucles y funciones.

Configuración de IDEOptimizando tu IDE para PHP

Utilizaremos distintos IDE'S según la preferencia delestudiante como son SublimeText, Brackets, Dreamweaver,entre otros y veremos como optimizarlos para trabajar con

PHP.

Page 4: Aplicaciones web PHP y MySQL - SDQ

Aplicaciones webPHP Y MYSQL CONTENIDO DE LA CLASE

Estructuras de controlLógica del lenguaje PHP

Aprenderemos las estructuras de control de este lenguaje ycon esto podremos desarrollar algoritmos complejos que

nos permitirán completar múltiples tareas dentro de nuestraaplicación.

Uso de las variables globalesRecolección de datos de formulario

Como capturar datos que vienen a travez de un formulario ode la dirección web (URL) y hacer uso de esas variablesutilizando $_POST y $_GET.

Introducción a MySQLQue podemos hacer con MySQL

Como diseñar, crear y administrar bases de datos, creartablas, añadir campos y configurar tipos de datos. Además

creación y configuración de los indices de las tablas.

Administrador de base de datosAplicaciones para administrar

Distintas aplicaciones que podemos utilizar paraadministrar de forma fácil y eficiente nuestras bases dedatos. Cada estudiante puede decidir la que más se adaptea sus necesidades.

Relación de tablasCreación de claves foráneas

Utilizaremos relaciones de tablas en las bases de datospara aumentar el desempeño en el uso de las mismas y

evitar datos huérfanos con la creación de indices y clavesforáneas.

Page 5: Aplicaciones web PHP y MySQL - SDQ

Aplicaciones webPHP Y MYSQL CONTENIDO DE LA CLASE

C.R.U.D. en MySQLManipulación de los datos

El C.R.U.D. no es más que la manipulación de los datos quesignifica CREATE, READ, UPDATE y DELETE. Veremos como

trabajar con los datos en su totalidad.

Uso de las funciones de MySQLListado de las funciones de MySQL

Utilizar las funciones que existen en MySQL y asi obtenermuchas más ventajas a la hora de desarrollar aplicacionesweb.

Uso de los STORED PROCEDUREComo crear y utilizar los procedimientos en MySQL

Conoceremos como crear procedimientos dentro de lasbase de datos en MySQL y asi reutilizarlos en nuestras

aplicaciones.

Combinando PHP con MySQLComo escribir juntos el código PHP y MySQL

Veremos como se pueden utilizar las funciones de MySQLque permiten la conexión al servidor, la selección de la basede datos, el envió de datos y la recepción de los mismosdesde la web.

Transacciones en MySQLUtilizar transacciones MySQL

Veremos como podemos hacer transacciones en MySQLalterando data diferentes y que sólo se complete si el

proceso de alteración es exitoso en todas y cada una de lasmodificaciones.

Page 6: Aplicaciones web PHP y MySQL - SDQ

Aplicaciones webPHP Y MYSQL CONTENIDO DE LA CLASE

OOPProgramar orientado a objetos

En la programación orientada a objetos veremos comopodemos utilizar las clases que vienen en el core de PHP,

sus métodos y propiedades. Así como también creadas porterceros y crearemos las nuestras.

Como proteger tus aplicacionesVeremos como aplicar seguridad en nuestro sistema

Aprenderemos como protegernos de los ataques deinyección de SQL a nuestras base de datos así comotambién de ataques XSS (Cross-site scripting).

Gestor de usuariosCreación de gestor de usuarios

En esta parte del curso vamos a trabajar con login deusuarios, como asignar distintos niveles de usuarios y sus

respectivos accesos. Todo esto con el uso de la variable desesión $_SESSION.

Como manipular archivos desde PHPVeremos como subir archivos desde una aplicación web

Aquí vamos a aprender como subir archivos y tambiéncomo controlar la subida por tipo y tamaño. Tambiénveremos como borrarlos.

Manipular imágenes desde PHPEditar imagenes en PHP

Vamos a cambiar el tamaño y también vamos a cortar(crop) imágenes desde PHP guardando los cambios en una

imagen nueva.

Page 7: Aplicaciones web PHP y MySQL - SDQ

Aplicaciones webPHP Y MYSQL CONTENIDO DE LA CLASE

Web servicesIntroducción a web services

Conoceremos los web services SOAP Y REST y susdiferencias y crearemos web services propios utilizando los

formatos JSON o XML.

Archivos PDF y EXCELGenerar archivos PDF y EXCEL

Veremos como podemos generar dinámicamente archivosde tipo PDF, WORD (.doc, .docx) y EXCEL (.xls, .xlsx) desdePHP que podremos descargar y posteriormente utilizar enlas aplicaciones de office.

Page 8: Aplicaciones web PHP y MySQL - SDQ

Aplicaciones webPHP Y MYSQL PROGRAMA DE CLASE

Servidores HTTP, SQL y PHP: Instalando Apache, PHP y MySQL

Configuración de IDES: Configurando Sublime Text 3Configurando BracketsConfigurando AtomConfigurando Visual Studio CodeSistema de prácticas

Sintaxis del lenguaje: EtiquetasComentariosFin de la sentenciaConstructores echo y print

Las variables y constantes: Declaración de variablesTipos de datosCreación de constantesManipulación de tipos (casting)Información de las variables

Operadores: AritméticosComparaciónLógicosArreglos (Arrays)Concatenación

Condicionales: If, elseif, elseSwitch

Iteraciones ( loops ): WhileDoForForeach

Funciones ( métodos ): Declarando, llamando y parámetrosRetornando valores

Cadenas de texto: Contando caracteres y palabrasExplode e implodeBuscandoRecortando y sustrayendoReemplazando

Arrays ( Arreglos ): Contando y agregando elementosBuscando valores

Otras funciones de PHP: printf

Page 9: Aplicaciones web PHP y MySQL - SDQ

Aplicaciones webPHP Y MYSQL PROGRAMA DE CLASE

Fecha y horaCalendario pt. 1Calendario pt. 2Calendario pt. 3abs, ceil, floor, round, randheader, isset, unset, die y exit

Variables: $_POST & $_GET: Variable $_POST pt. 1Variable $_POST pt. 2$_POST en el mismo archivoVariable $_GET pt. 1Variable $_GET pt. 2$_GET en el mismo archivo

Variable: $_FILES: Subiendo archivosValidando archivosFunción glob

Inclusión de archivos: Incluyendo archivos

XML & JSON: Leyendo XMLLeyendo JSON

MySQL: MySQL Work BenchHeidiSQLphpMyAdminTipos de datosINSERTSELECT pt. 1SELECT pt. 2UPDATEDELETE

MySQL desde PHP: Funciones mysqli pt. 1Funciones mysqli pt. 2Funciones mysqli pt. 3Clases mysqli y mysqli_resultClase PDO

Creando app: To Do List: Estructura del proyectoDiseñando la base de datosINSERT: Agregando tareas IINSERT: Agregando tareas IISELECT: Listando tareasUPDATE: Actualizando tareasDELETE: Eliminando tareas

Page 10: Aplicaciones web PHP y MySQL - SDQ

Aplicaciones webPHP Y MYSQL PROGRAMA DE CLASE

Creando app: Agenda: Carpeta del proyectoDatepickerTabla del calendarioGenerando calendarioFormulario y base de datosModalFormulario del eventoCategoríasAgregando eventosSeleccionando eventosMostrando eventosModal para editarAjaxData desde ajaxActualizando eventosEliminando eventosMVC pt. 1MVC pt. 2MVC pt. 3

Variables: $_SESSION & $_COOKIE: Variable: $_COOKIEErrores con $_COOKIE$_SESSION

Creando app: Login de usuarios (RBAC): Cuentas de usuariosIniciando sesiónRestringiendo accesoPerfiles de usuarioTabla de permisosPermisosFormulario de permisosGuardando los permisosAccesando con permisos

MySQL: Transacciones y Stored Procedures: PreparaciónErroresMySQLiPDOStorage procedure

Programación orientada a objetos: Las clasesPropiedades y métodosMétodos mágicosNamespaceExtendiendo clasesTo do list pt. 1

Page 11: Aplicaciones web PHP y MySQL - SDQ

Aplicaciones webPHP Y MYSQL PROGRAMA DE CLASE

To do list pt. 2To do list pt. 3

Creando un framework: Host virtual en apacheRutas [ mod_rewrite ]Flujo MVCVariables de nombre variableEstructuras de carpetasClase AppClase ControllerClase ModelClase MessagesTodolist pt. 1Todolist pt. 2Todolist pt. 3Todolist pt. 4Todolist pt. 5

Manipulación de imágenes: Cambiando tamañoMarca de aguaRecortandoJcrop pt. 1Jcrop pt. 2

Generar archivos PDF y Excel: Word pt. 1Word pt. 2Excel pt. 1Excel pt. 2PDF pt. 1PDF pt. 2PDF pt. 3PDF pt. 4

Búsqueda y paginación: LIKEMATCH AGAINSTPaginando pt. 1Paginando pt. 2

Estudio de caso proyecto MVC: Fakebook: IntroducciónEstructuras de la base de datosEstructura de carpetasClase principal de la aplicaciónLos controladores y las vistasAgregando Bootstrap a las vistasCreando el formulario de loginCreando formulario de crear cuenta

Page 12: Aplicaciones web PHP y MySQL - SDQ

Aplicaciones webPHP Y MYSQL PROGRAMA DE CLASE

.htaccess para las direcciones (URL)

.htaccess para bloquear carpetasCreando la clase ModelCreando el método estático basedirCreando el método redirectCreando el modelo de cuentasOptimizando el modelo de usuariosEncriptando contraseña y tokenURL de activación de cuentaClase PHPMailerEnviando correo de activaciónMulti-idiomas con constantesMulti-idiomas con XMLMulti-idiomas con JSONCorreos Multi-idiomasRelaciones de tablasCreando la clase SessionCargar clases de forma automáticaCreando código del loginMostrando los datos de la sesiónArea de sesiónFormulario de los postsInsertando los postsMostrando todos los postsObteniendo el usuario del postBotones de los postsControlando visibilidad de los postsMostrar y ocultar los postsAcceso a modificación de los postsProtección al botón deleteVista de editar los postsEditando los postsModificando la plantillaModificando área de sesiónImágenes de perfilVista del perfil parte 1Vista del perfil parte 2Subir imagen y cambiar tamañoPreparando la imagen para recortarRecorte (crop) con jQueryManejando errores del recorte (crop)Creando el método de recorte (crop)Creando la clase ErrorsCambiando la contraseñaValidando la contraseñaActualizando información del usuario

Page 13: Aplicaciones web PHP y MySQL - SDQ

Aplicaciones webPHP Y MYSQL PROGRAMA DE CLASE

Finalizando perfil del usuarioReestableciendo la contraseñaCorreo para reinicio de contraseñaVista de cambio de contraseñaMenú para editar usuariosVista para editar usuariosUsuarios de la base de datosActivando y desactivando usuariosGenerando archivos PDFVista para editar usuariosFinalizando edición de los usuariosEliminando usuarios

Page 14: Aplicaciones web PHP y MySQL - SDQ

Aplicaciones webPHP Y MYSQL

MÉTODO DE EVALUACIÓN

En SDQ evaluamos tanto el conocimiento teorico como lashabilidaddes prácticas para asegurarnos que nuestros alumnos

cumplan con todos los objetivos de la clase.

Tareas y prácticasSon los puntos acumulados de lasprácticas del aula y las asignacionespara la casa que el maestro pongadurante el transcurso de todo el curso.

Examen teorico parcialAproximadamente a mitad del curso seevaluan los conocimintos adquiridoshasta ese momento, mediante un unaplataforma de examen digital.

Examen teorico finalEl día final del curso se evaluan todoslos contenido, mediante la mismaplataforma de examen digital delexamen parcial.

Proyecto finalEs el proyecto práctico que el alumnodebe entregar el último dia de la clase.Los requerimientos de este proyecto seencuentran al final de este documento.

Certificado de aprobaciónCon una calificación sobre los 80% elestudiante obtiene un certificadoavalado internacionalmente.

Page 15: Aplicaciones web PHP y MySQL - SDQ

Aplicaciones webPHP Y MYSQL PROYECTO FINAL

Proyecto web dinámicoDesarrollar un proyecto web dinámico basado en PHP en combinación con labase de datos MySQL.

Aspectos a evaluar:• Registro y acceso de usuarios de al menos dos niveles (normal y administrador)• Buen uso de la variable de sesión ($_SESSION) desde su creación hasta su destrucción• Desplegar contenido dinámico HTML & CSS en las páginas, mediante PHP traído desde la base dedatos MySQL.• Administrar la inserción, edición y eliminación de contenido desde una sección del proyecto a lacual solo pueda acceder el tipo de usuario administrador.• Archivos del proyectos bien nombrados y organizados en carpetas.• Base de datos organizada.• Código PHP comentado y limpio.• Funcionamiento de la aplicación.• Buena gestión de errores.• Envio de Querys seguros a la base de datos

Práctica de evaluación (en el aula)Demostrar los conocimientos mediante una práctica en el aula de clases. Paraesta práctica le le dará; al estudiante los archivos de un proyecto casi terminadoy le pedirá que realice las tareas que lo completen.

Aspectos a evaluar:• Importar la base de datos de un archivo SQL.• Hacer que los artículos se desplieguen tal cual como están los ejemplos, pero que el contenido seadquiera de los artículos de la base de datos.• Las imágenes de los artículos se muestren del tamaño que se ven en el ejemplo.• Cuando se haga click en el botón leer más que se abra el archivo articulo.php con el contenidocompleto del artículo y la imagen del tamaño grande.• Hacer que funcione el sistema de comentario, este debe ser por articulo, es decir que cadaarticulo tenga sus propios comentarios sin modificar la estructura de la base de datos.• Que cada comentario se pueda eliminar haciendo click en el botón de borrar de color rojo quetienen los comentarios.