2n DESENVOLUPAMENT D'APLICACIONS WEB

Mòdul 7 - Desenvolupament web en entorn servidor

P
ROGRAMACIÓ DE LES UFs
Accés a la programació i els criteris d'avaluació

UNITAT FORMATIVA 1: Programació web en entorn servidor

Documentació
Instal·lació de Linux Debian 12.1.0
Documentació bàsica del M07UF1

Exemples
1- Exemple de treball amb arrays associatius i foreach
2- Exemples de formularis i mètodes
3- Exemples de formulari que crida a codi PHP en el mateix fitxer. Utilització de la funció header
4- Exemple d'utilització del mètode DELETE amb Ajax
5-
Exemples de pas de paràmetres a funcions
6-
Funcions amb longitud variable de les dades passades com a paràmetre. Funcions variables
7- Més exemples de funcions
8- Exemples d'utilització d'arrays
9- Exemple de manipulació de fitxers - I
10-
Exemple de manipulació de fitxers - II (gestió d'usuaris d'una aplicació amb fitxers de texte)
11- Exemple de treball amb sessions d'usuari
12- Variables de sessió d'usuari
13- Expiració de sessions d'usuari
14- Exemples de funció header() i buffering
15- Exemples de classes i objectes
16- Exemples de namespace i use
17- Exemples de treball amb Dompdf
18- Exemples de treball amb contrasenyes

Sessions de treball a l'aula

    - Bloc 1 - Fonaments bàsics
        Sessió 1: Formularis - I. Estructures condicionals

        Sessió 2: Formularis - II. Estructures iteratives. Servidor interpret PHP. Monstrant errors de PHP en el navegador
        Sessió 3: Formularis diversos
        Sessió 4: Arrays indexats i associatius
        Sessió 5: Variables. Tipus de variables. Operadors

        Sessió 6: Funcions
   
    - Bloc 2 - Projecte
        Sessió 7: Frameworks. Composer. Dompdf. PHPMailer
        Sessió 8: Cookies
        Sessió 9: Sessions d'usuaris
        Sessió 9 (ampliació): Session d'usuaris. Cistella
        Sessió 10: Headers
        Sessió 11: Treballant amb classes i objectes
        Sessió 12: Treballant amb fitxers de text

Temari

1- Arrays associatius: Sessió 4
2- Arrays indexats:
Sessió 4
3- Contrasenyes segures i emmagatzemades de manera segura: Sessió 9
i Sessió 9 - Ampliació
4- Cookies: Sessió 8
5- Composer: Sessió 7
6- Dompdf:
Sessió 7
7- Estructures de control condicionals: Sessió 1
8- Estructures de control iteratives: Sessió 2
9- Fitxers: Sessió 12
10- Formularis: Sessió1, Sessió2, Sessió 3
11- Frameworks: Sessió 7
12- Funcions: Sessió 6
13- Headers: Sessió 10
14- Operadors: Sessió 5 i Documentació bàsica pàgines 9 a 12
15- PHP Mailer:
Sessió 7
16- Treballant amb classes i objectes: Sessió 11
17- Sessions d'usuari i Cistella: Sessió 9 i Sessió 9 - Ampliació
18- Variables i tipus. Casting i parsing: Sessió 5
i Documentació bàsica pàgines 9 a 12

Temari annex

1- Visualització d'errors en el navegador: Sessió 2
2- Iniciant un servidor amb l'interpret de PHP: Sessió 2
3- Multiples frameworks:
Sessió 7

Exercicis

Bloc 1 d'exercicis
Bloc 1 d'exercicis: solucions

Projecte
Projecte del M07UF1

Exa
men
Examen del M07UF1


UNITAT FORMATIVA 3: Tènciques d'accés a dades

Documentació
Introducció a l'accés a bases de dades (Sergi Grau)
API MySQL original (Sergi Grau)
API MySQL millorada - MySQLi (Sergi Grau)
Extensió PDO (Sergi Grau)
Recordatori sobre bases de dades MySQL
Conceptes de PHP i MySQL
Tutorials i exemples sobre PDO, MySQLi, PHP error reporting, SQL injection i principis bàsics de programacio PHP


Sessions de treball Part I - MySQLi, PDO, scripts SQL
Sessió 1) Accés a MySQL utilitzant VirtualBox i Vagrant. Recordatori d'instruccions bàsiques de MySQL. Scripts SQL-I. CRUD bàsic amb PHP (accés a dades i treballant amb registres)
Sessió 2) Scripts SQL-II. Conceptes de MySQL (Commits i tipus d'ordres SQL) . Creant i esborrant bases de dades i taules utilitzant PDO i MySQLi. Creant usuaris utilitzant PDO i MySQLIi.
Sessió 3: Sentències preparades amb MySQLi i PDO
Sessió 4: Sentències múltiples. Transaccions. Expresions regulars
Sessió 5: Procediments emmagatzemats en la base de dades
Sessió 6: Emmagatzematge de contrasenyes segurres xifrades amb hash. Altres mesures de seguretat bàsiques
Sessió 7: Claus foranes (Foreign Keys) i Claus primàries (Primary Keys)
Sessió 8: Composició de Claus primàries (Primary Key Composite)
Sessió 9: Scripts SQL amb creació de BD, taules, usuaris i procedures. Treballant amb variables. Concatenació. Crides a procedures. Assignant permisos i contraseneyes. Bucles tipus While. 


Sessions de treball Part 2 - Laravel
Sessió 1) Entorn de treball. Creació de projectes amb el framework incorporat.
 
  (Modificacions el 13-4-24 per canvis en la versió de Laravel)
Sessió 2) Namespace. Migrations. Bastiment de seguretat Breeze.   (Modificacions el 13-4-24 per millorar l'explicació)
Sessió 3) Models en Laravel. Controladors en Laravel. Iniciació a rutes i vistes  (Modificacions el 13-4-24 per canvis en la versió de Laravel)
Sessió 4) Seeder i Factories. Registre i Login amb Breezer (No hi ha modificacions 14-4-24)
Sessió 5) Rutes. Rutes i Breeze. Desenvolupants mètodes i vistes del controladors. Gestió mínima d'errors
 
(Modificacions -> veure Notes 30-3-24) (Modificacion 15-4-24 a la secció de Gestió mínima d'errors per canvis en la versió de Laravel).
Sessio 6) Anàlisi. Model Entitat Relació. Model Relacional. Claus forànes compostes. Creació de Models i Controladors a partir de l'anàlisi.
Sessió 7) Projectes de Laravel amb multiples roles d'usuaris
  (Modificacions -> veure Notes 30-3-24) (Modificacions 20-4-24 a la secció B per canvis en la versió de Laravel)
Annex 1) Autorització bàsica d'accés a parts de l'aplicació en funció de l'autenticació
  (Modificacions 20-4-24 per canvis en la versió de Laravel)
Annex 2) Modificació del layout navigate.blade.php per evitar acces a dashboard d'administrador sense permís

Projecte
Projecte del M07UF3

Exà
mens
Examen 1: Demostració en video del funcionament