Advanced Search
Search Results
355 total results found
Els controllers
A continuació, tenim els dos controladors presents en l'estructura MVC: el controlador de la pàgina principal (ctl_main.php) i el controlador d'usuaris (ctl_users.php). ctl_main.php Aquest controlador s'encarrega de gestionar l'accés a la pàgina d'inici de l...
config\Database.php
Per millorar la gestió de la base de dades i fer el codi més robust i reutilitzable, crearem una classe anomenada Database que encapsularà la lògica de connexió, substituïnt l'ús directe de mysqli dins del Model, però utilitzar PDO (PHP Data Objects) és una mi...
Els models
Amb la classe Database orientada a PDO, el Model es transforma per utilitzar sentències preparades, augmentant dràsticament la seguretat i la robustesa. A continuació, s'explica com s'implementaria el Model d'Usuaris (mdl_users.php) per a les operacions CRUD (...
Les vistes
Les vistes són la part de l'MVC que conté el codi de presentació (HTML, CSS i JavaScript). L'únic codi PHP que haurien de contenir és per mostrar les dades que els ha passat el Controlador. Vista Pàgina principal (app/views/main.php) Aquesta vista és la més...
Front controller: index.php
Aquest Front Controller (index.php), utilitza el patró de disseny Model-View-Controller (MVC) i afegeix una lògica de Routing. El Front Controller utilitza una funció per determinar el controlador i l'acció basant-se en els paràmetres de la URL, i gestiona le...
Estructura bàsica
Aquesta aplicació seguirà l'estructura del patró Model-View-Controller (MVC) i requereix una organització de directoris clara per gestionar els seus components. Aquí tenim el detall de l'estructura de directoris necessària i la descripció dels fitxers per a l'...
Loader
Aquí teniu el codi de la classe Loader i una explicació detallada del seu funcionament. Aquest és el codi contingut a l'arxiu mvc_class/Loader.php. La classe Loader permet que el codi sigui més net i escalable al resoldre automàticament la ubicació dels fitxer...
Configuració: db.php i database.php
L'arxiu de configuració db.php és simple i defineix en forma d'array la configuració de la connexió. Per millorar la seguretat i preparar l'aplicació per a l'ús de PDO, afegirem la classe Database.php. Configuració En lloc de constants globals, usarem una c...
Els controllers
Per adaptar i millorar els controladors, implementarem una petita millora que fa ús de la classe Database i assegurarem una millor separació de responsabilitats. Els dos controladors que tenim són: Ctl_home.php: Per a la pàgina principal. Ctl_user...
Els models
El model Mdl_users.php per migrar completament de l'extensió obsoleta mysqli a l'objecte PDO (PHP Data Objects), tal com es proposa en la implementació de la classe Database.php. Aquesta millora incrementa la seguretat (mitjançant prepared statements) i l'abst...
Les vistes
Aqui tenim les vistes existents i les detallem per adaptar-les a l'estructura de controladors i la gestió d'errors 404 que hem implementat. L'aplicació té dues vistes principals a la carpeta App/views/. Vista principal: App/views/main.php Funció ...
MVC Class, source code
Estructura directoris mvc_class/ ├── App/ │ ├── config/ │ │ └── db.php │ ├── Core/ │ │ └── Database.php │ ├── Controllers/ │ │ ├── Ctl_Home.php │ │ └── Ctl_users.php │ ├── Models/ │ │ └── Mdl_users.php │ ...
Introducció PSR-FIG
Les PSR (PHP Standard Recommendations) són un conjunt de directrius i estàndards publicats pel PHP-FIG (PHP Framework Interop Group). El seu objectiu principal és millorar la interoperabilitat entre diferents components i frameworks PHP. Seguir les PSRs fa que...
PSR-1 Basic coding standard
La PSR-1 (Basic Coding Standard) és l'estàndard fonamental de l'PHP-FIG. Estableix les normes mínimes i essencials per garantir l'interoperabilitat i la coherència de l'estil entre tots els components de codi PHP. L'objectiu és que qualsevol desenvolupador pu...
PSR-4 Autoloading standard
La PSR-4 (Autoloading) és l'estàndard clau que defineix un mètode consistent perquè els autoloader de PHP localitzin i carreguin fitxers de classe basant-se en el seu Namespace. Resoldre el problema d'haver d'utilitzar require o include repetidament, fent que ...
PSR-12 Extended coding style
La PSR-12 (Extended Coding Style) és l'estàndard de codificació més modern i complet del PHP-FIG. El seu objectiu és proporcionar un conjunt de regles que garanteixin la màxima llegibilitat i interoperabilitat entre codis PHP. La PSR-12 estén i substitueix la ...
PSR-2 Coding style guide (DEPRECATED)
La PSR-2 (Coding Style Guide) va ser l'estàndard d'estil de codificació més influent i àmpliament adoptat en la comunitat PHP moderna, successor de la PSR-1. Estat Actual: Deprecada És important notar que la PSR-2 actualment està obsoleta i ha estat substit...
PSR-3 Logger interface
La PSR-3 (Logger Interface) és un estàndard que defineix una interfície (contracte) comuna per als sistemes de logging (registre d'esdeveniments). El seu objectiu principal és garantir que les llibreries i les aplicacions puguin intercanviar fàcilment diferent...
Introducció
Crear documents PDF des de PHP és una tasca comuna que generalment es realitza mitjançant llibreries externes, ja que PHP no disposa de funcionalitat nativa robusta per a generar fitxers binaris complexos com el PDF. El procés es redueix a utilitzar una d'aqu...
TCPDF
TCPDF és una de les llibreries més completes i robustes per generar PDFs directament des de PHP. No depèn d'HTML per al disseny, sinó que utilitza una API basada en funcions per dibuixar el contingut. Instal·lació (via Composer) El mètode recomanat per insta...