Corso gratuito · Utenti iscritti · Lezione 4 / 10
Progettare dati, articoli e accesso pubblico
Collegare schema MySQL, query PDO e regole di visibilità prima di disegnare l’area editoriale.
Redazione: Take Two · Pubblicato
Anteprima della lezione
I dati essenziali
users contiene email, hash della password e ruolo. posts contiene titolo, testo, stato, autore e versione; gli eventi aggiungono fonte, impronta, date e chiave univoca. import_runs registra esito e modalità del job. rate_limits contiene contatori temporanei. Lo stato è draft o published: non usare la sola presenza di una data come autorizzazione a mostrare un articolo.
Una regola in tutti i percorsi
L’elenco, il dettaglio e la ricerca pubblica devono filtrare status=published. Un controllo nella sola homepage non protegge /post?id=... e /search. Il progetto restituisce 404 per bozze richieste da un visitatore: non espone titolo o corpo. La redazione usa rotte diverse e controlla il ruolo. Il membro può accedere all’account, ma questo non gli concede automaticamente la lettura delle bozze.
Cosa controllare nella pratica
- Foreign key autore presente.
- Bozze assenti da HTML e JSON pubblici.
- Query parametrizzate e output escaped.
Continua con la lezione completa
Iscriviti gratis per accedere alla spiegazione completa, agli esempi, all’esercizio e alla soluzione commentata. Questa anteprima resta aperta a tutti.
Materiali del laboratorio · Versione 1
Il progetto di riferimento
Scarica il blog completo, con istruzioni in italiano e inglese, schema SQL, contratti per gli agenti, fixture inventate e test. L’interfaccia del blog di esempio è in inglese. Il codice è un laboratorio locale: recupero password, verifica email e MFA sono evoluzioni da affrontare prima di aprirlo a una community pubblica.
Download gratuito. Le lezioni complete richiedono un account Take Two gratuito. L’accesso a Codex dipende dal tuo piano.
Fonti e approfondimenti
- OpenAI · Codex CLI: setup and first task ↗
- OpenAI · Project instructions with AGENTS.md ↗
- OpenAI · Subagents and coordination ↗
- OpenAI · Non-interactive mode and structured output ↗
- Bootstrap · Getting started ↗
- Bootstrap · JavaScript and jQuery ↗
- jQuery · Official downloads ↗
- PHP · Password hashing ↗
- PHP · PDO prepared statements ↗
- PHP · Session security ↗
- OWASP · CSRF prevention ↗
- Turismo Roma · Roma Live calendar ↗
- Turismo Roma · Crawl rules ↗