PHP  »  Articoli  »  CakePHP 

CakePHP: PHP per il Web 2.0

di: Gabriele Farina     15 Dicembre 2006

La configurazione iniziale

Prima di iniziare a testare il framework è necessario configurare a dovere il Web server, l'accesso ai database e le opzioni globali.

Web server

Per quanto riguarda la configurazione del Web server è possibile abilitare mod_rewrite ed utilizzare il file .htaccess fornito all'interno dell'installazione standard per poter utilizzare URL puliti e chiari da leggere che non facciano uso di query string. Il file .htaccess fornito dovrebbe andar bene per tutte le esigenze, a patto che la cartella che si è deciso impostare come DocumentRoot abbia abilitata la possibilità di sovrascrivere le regole di configurazione.

Database

Successivamente è necessario configurare l'accesso al database. Per fare questo bisogna modificare il file app/config/database.php.default e rinominarlo in database.php, modificando i valori dell'array $default definito all'interno del file in modo che corrispondano alle proprie esigenze.

Un accorgimento da tenere in considerazione è il fatto che le tabelle definite all'interno del database utilizzato devono seguire alcune regole affinchè CakePHP le gestisca in modo corretto:

  • I nomi devono essere in plurale inglese (articles ad esempio), in modo che i modelli corrispondenti abbiano nomi in singolare;
  • tutte le tabelle devono avere una chiave primaria chiamata id;
  • le chiavi esterne utilizzate per costruire le relazioni tra le tabelle devono essere nomiate utilizzando il singolare della tabella a cui fanno riferimento seguito da _id (article_id per esempio);
  • è possibile includere i campi created e modified che verranno automaticamente aggiornati da CakePHP quando si opererà sui record.

Opzioni globali

Infine, presi questi accorgimenti, è possibile modificare le opzioni di configurazione globale di CakePHP reperibili all'interno di app/config/core.php; ogni singola opzione è anticipata da un commento descrittivo esplicativo che ne spiega l'utilità:

  • DEBUG: questa direttiva impostata ad un valore superiore a 0 indica al framework che non ci si trova in ambiente di produzione; in questo caso verranno stampati tutti i messaggi di errore generati e l'output delle funzioni pr e debug. Nel caso in cui il valore sia superiore a 2 verranno anche stampati gli statement SQL in fondo alla pagina.
  • CAKE_SESSION_COOKIE: il nome del cookie da utilizzare per registrare l'id di sessione;
  • CAKE_SECURITY: controlla il livello di sicurezza dell'applicazione e può assumere i valori high (la sessione scade dopo 10 minuti e gli ID sono generati nuovamente ad ogni richiesta), medium ( la sessione dura 20 minuti) e low (la sessione dura 30 minuti);
  • CAKE_SESSION_SAVE: specifica il modo con cui verranno salvate le sessioni e può assumere i valori cake (i dati sono salvati all'interno di app/tmp), php (i dati sono salvati come configurato nel file php.ini) e database (i dati sono salvati nel database in base alle opzioni di configurazione di default);

Conclusioni

Abbiamo concluso il primo articolo su CakePHP introducendo brevemente il framework e spiegando come procedere con l'installazione. Nei prossimi articoli vedremo come preparare le basi per una nuova applicazione studiando come si implementano i modelli, le viste ed i controller, e successivamente vedremo qualche esempio di implementazione pratica.

Guide PHP

Guida Yii Framework

Come creare applicazioni Web in modo semplice e veloce con il...

Guida Zend Framework

Diventate professionisti dello sviluppo Web. Zend Framework è lo...

Guida Applicazioni Facebook con PHP

Come realizzare un'applicazione per Facebook. Dalle basi della...

Altre guide

Newsletter @PHP

Ogni lunedì, direttamente nella tua e-mail: script, articoli, guide e tutorial su PHP, MySQL e Apache.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Corso PHP per Webmaster

11 Giugno 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

25 Giugno 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

05 Giugno 2012 a Roma
Disponibilità: 7 Posti