Advanced Search
Search Results
618 total results found
Com descarregar un arxiu de writable?
Aquesta és una situació molt habitual. Per defecte, la carpeta writable està fora de l'abast públic per seguretat (per evitar que ningú executi scripts maliciosos o vegi fitxers privats). Si volem servir un fitxer des d'allà, hem de crear un "Pont" (un control...
Pujada de múltiples fitxers
Aquesta és una part fonamental per a qualsevol gestor de fitxers modern. La pujada múltiple a CodeIgniter 4 es diferencia de la individual principalment en com rebem les dades: en lloc d'un sol objecte UploadedFile, rebem un array d'objectes. Quan volem pujar...
Eliminació de fitxers al servidor
Per a qualsevol sistema de gestió de fitxers, tan important és saber pujar un arxiu com saber netejar el servidor per no malbaratar espai en disc o per complir amb normatives de privadesa (com quan un usuari elimina el seu compte). En CodeIgniter 4, l'eliminac...
Redimensior imatges amb la llibreria Image
Per redimensionar imatges a CodeIgniter 4, el framework ens facilita la llibreria Image Manipulation, que per defecte utilitza la llibreria GD (GD Graphics Library) de PHP. És la forma més eficient de generar miniatures (thumbnails) o ajustar imatges grans per...
Pujada arxius Drag&Drop amb formulari standard
Tot i que estem fent un enviament de formulari estàndard (sense AJAX/Fetch), utilitzem JavaScript per "enllaçar" l'acció d'arrossegar fitxers amb un input de tipus file que tenim ocult. La clau d'aquest sistema és l'objecte DataTransfer. Quan un usuari deixa ...
Llibreria Email: enviar mail
Aquesta és una de les llibreries més consolidades de CodeIgniter. En la versió 4, s'ha optimitzat per ser utilitzada com un Servei, el que facilita la seva crida des de qualsevol controlador o helper. La classe Email de CI4 permet gestionar enviaments complexo...
Llibreria Honeypot
La llibreria Honeypot (pot de mel) és una de les eines de seguretat més elegants de CodeIgniter 4. La seva filosofia no és bloquejar l'usuari amb trencaclosques visuals (com els Captchas), sinó posar un parany invisible que només els bots "trepitjaran". Què é...
Personalitzar les vistes d'error
Personalitzar les pàgines d'error a CodeIgniter 4 és un pas fonamental per donar una imatge professional a l'aplicació. No hi ha res que faci "fugir" més un usuari que una pantalla taronja de depuració o un text genèric d'Apache. CI4 gestiona els errors mitjan...
Llibreria Throttler
La llibreria Throttler (limitador) és una eina de seguretat fonamental en CodeIgniter 4 dissenyada per controlar la taxa de peticions (Rate Limiting). La seva funció principal és protegir la teva aplicació contra abusos, atacs de força bruta o l'ús excessiu d'...
Llibreria Times and Dates
La llibreria Time de CodeIgniter 4 és una extensió de la classe nativa de PHP DateTime, però molt més potent, immutable i amb suport multiidioma. En lloc de barallar-te amb càlculs manuals de segons o formats estranys, la classe Time et permet manipular dates ...
Generació de PDFs
Integrar llibreries externes de tercers (com les de generació de PDF) en CodeIgniter 4 és extremadament senzill gràcies a l'autocarregador de Composer. En el món de CI4, ja no cal incloure fitxers manualment amb require; n'hi ha prou amb instal·lar la llibreri...
Desar un PDF generat
Emmagatzemar un PDF directament al servidor (a la carpeta writable) és una pràctica molt comuna quan volem generar un document per enviar-lo després com a adjunt per correu o per guardar un historial de factures sense que l'usuari l'hagi de descarregar manualm...
Logger RFC 5424. PSR-3
El Logger de CodeIgniter 4 és l'eina definitiva per a la traçabilitat en entorns professionals. Mentre que un usuari només veu una pàgina d'error o un missatge d'èxit, el Logger registra a "la rereguarda" tot el que passa realment al servidor. CI4 segueix l'es...
Logger a BBDD
Per registrar els logs directament en una base de dades en lloc de fitxers de text, CodeIgniter 4 utilitza el que anomenem Handlers. Per defecte, CI4 utilitza el FileHandler, però podem configurar-lo per fer servir un DatabaseHandler. Aquesta pràctica és molt ...
Benchmarking d'aplicacions
L'optimització de codi en entorns professionals requereix dades precises. En lloc de suposar quina part de la nostra aplicació és lenta, fem servir el Timer. CodeIgniter 4 incorpora una eina de cronometratge molt lleugera que permet mesurar intervals de temps ...
Profiler de rendiment
Un Profiler personalitzat ens permetrà registrar automàticament el rendiment de l'aplicació a la base de dades. En lloc de mirar el cronòmetre manualment, farem que cada vegada que s'acabi una execució, el sistema guardi els temps en la taula de logs creada. A...
Ressaltat de sintaxi: Highlight.js
La llibreria Highlight.js (sovint anomenada hljs) és l'estàndard de la indústria. Permet que qualsevol bloc de codi dins d'unes etiquetes <pre><code> es transformi automàticament en un text amb colors, facilitant enormement la lectura tècnica. Highlight.js és...
Introducció
CodeIgniter Shield, aquesta és la llibreria d'autenticació i autorització oficial per a CI4. Ja no cal "reinventar la roda" creant sistemes de login manuals; Shield és robust, segur (segueix les recomanacions del NIST) i molt flexible. Shield gestiona el regis...
RBAC amb Shield
Per configurar una aplicació completa amb Shield utilitzant sessions i RBAC (Role-Based Access Control), seguirem un flux lògic: des de la definició de rols fins a la protecció de les rutes. Definir Rols i Permisos (app/Config/AuthGroups.php) Aquest és el co...
API Token security
Per validar una API en CodeIgniter 4 utilitzant Shield, passarem d'utilitzar sessions (cookies) a utilitzar Access Tokens (com els Personal Access Tokens de GitHub). Aquest és el mètode estàndard per a aplicacions mòbils o SPAs (Vue, React, Angular). Activar ...