|
Una prima applicazione 1 Anno, 10 Mesi
|
Karma: 2
|
Una cosa è leggere la nutrita documentazione di CI (indispensabile!) un'altra cosa è cominciare a lavorare praticamente per creare una prima applicazione utile.
Ci sono diversi tutorial che spiegano come installare CI, e come creare il solito Hello World. Esistono anche tutorial avanzati che spiegano come implementare funzioni specifiche e addirittura come creare un blog da zero. Ma forse manca ancora, o almeno in italiano, qualche esempio di applicazione semplice ma davvero utile per iniziare a fare qualcosa di contreto che ci dia una base su cui lavorare gradualmente per sviluppare progetti più complessi.
Grazie all'aiuto di Davide, amministratore di questo portale, ho cominciato ad utilizzare CI per migrare alcuni miei vecchi e semplici progetti si siti in PHP (procedurale) al nostro Framework, ed ecco gli appunti presi mentre ci lavoravo.
Si tratta solo di appunti, una specie di promemoria per me stesso, ma ho pensato di condividerli con tutti, nella speranza di avere da voi alcuni utili feedback, per migliorare le mie conoscenze. Sono quindi gradite, osservazioni, suggerimenti, correzioni ...
allego il link:
www.schirone.it/index.php?option=com_con...p;id=28&Itemid=1
|
|
|
|
Ultima modifica: 26/04/2010 09:01 Da schirone.
|
|
|
Re:Una prima applicazione 1 Anno, 9 Mesi
|
Karma: 1
|
|
Grazie Salvatore per il prezioso contributo.
Davide
|
|
|
|
|
|
|
Re:Una prima applicazione 1 Anno
|
Karma: 0
|
grazie Salvatore per il tutorial,. finalmente inisco a capir qualcosa
solo che mi son perso.. un pò...
sono arrivato al 5 paragrafo senza nessun problema le pagine grazie al menù vengono cambiate...
ma dal sesto non capisco come fare, quando dici che cmq diventa scomodo passarli come un array insomma...
vedo che riscrivi il controller ma non capisco bene come... puoi chiarirmi per favore.?
grazie e buona giornata
Giuseppe
questo il mio controller
| Codice: |
<?php
class Sito extends Controller{
public $data;
function Sito(){
parent::Controller();
$this->load->helper('url');
$this->data['top_menu']['home'] = anchor('sito','Home',array('title'=>'Home'));
$this->data['top_menu']['chi_siamo'] = anchor('sito/chi_siamo','Chi Siamo',array('title'=>'Chi Siamo'));
$this->data['top_menu']['prodotti'] = anchor('sito/prodotti','Prodotti',array('title'=>'Prodotti'));
$this->data['top_menu']['dove_siamo'] = anchor('sito/dove_siamo','Dove Siamo',array('title'=>'Dove Siamo'));
$this->data['top_menu']['contatti'] = anchor('sito/contatti','Contatti',array('title'=>'Contatti'));
}
function index()
{
$this->data['content_title'] = "Home";
$this->data['content_text'] = "Benvenuti in home page";
$this->load->view('premiumseries/index', $this->data);
}
function chi_siamo()
{
$this->data['content_title'] = "Chi Siamo";
$this->data['content_text'] = "Benvenuti nella sezione CHI SIAMO";
$this->load->view('premiumseries/index', $this->data);
}
function prodotti()
{
$this->data['content_title'] = "Prodotti";
$this->data['content_text'] = "Benvenuti nella sezione PRODOTTI";
$this->load->view('premiumseries/index', $this->data);
}
function dove_siamo()
{
$this->data['content_title'] = "Dove Siamo";
$this->data['content_text'] = "Benvenuti nella sezione DOVE SIAMO";
$this->load->view('premiumseries/index', $this->data);
}
function contatti()
{
$this->data['content_title'] = "Contatti";
$this->data['content_text'] = "Benvenuti nella sezione CONTATTI";
$this->load->view('premiumseries/index', $this->data);
}
}
?>
|
|
|
girub
Fresh Boarder
Messaggi: 1
|
|
|
|
|
Re:Una prima applicazione 1 Anno
|
Karma: 2
|
|
Grazie Giuseppe per l'apprezzamento del mio tutorial. In questo momento mi sto occupando di altro, ma presto aggiornerò il FW e riscriverò alcune cose e ne inserirò altre. Ora però guardo con calma il tuo script e ti facci sapere. a presto.
|
|
|
|
|
|
|
Re:Una prima applicazione 8 Mesi, 1 Settimana
|
Karma: 0
|
girub ha scritto:
grazie Salvatore per il tutorial,. finalmente inisco a capir qualcosa
solo che mi son perso.. un pò...
sono arrivato al 5 paragrafo senza nessun problema le pagine grazie al menù vengono cambiate...
ma dal sesto non capisco come fare, quando dici che cmq diventa scomodo passarli come un array insomma...
vedo che riscrivi il controller ma non capisco bene come... puoi chiarirmi per favore.?
grazie e buona giornata
Giuseppe
questo il mio controller
| Codice: |
<?php
class Sito extends Controller{
public $data;
function Sito(){
parent::Controller();
$this->load->helper('url');
$this->data['top_menu']['home'] = anchor('sito','Home',array('title'=>'Home'));
$this->data['top_menu']['chi_siamo'] = anchor('sito/chi_siamo','Chi Siamo',array('title'=>'Chi Siamo'));
$this->data['top_menu']['prodotti'] = anchor('sito/prodotti','Prodotti',array('title'=>'Prodotti'));
$this->data['top_menu']['dove_siamo'] = anchor('sito/dove_siamo','Dove Siamo',array('title'=>'Dove Siamo'));
$this->data['top_menu']['contatti'] = anchor('sito/contatti','Contatti',array('title'=>'Contatti'));
}
function index()
{
$this->data['content_title'] = "Home";
$this->data['content_text'] = "Benvenuti in home page";
$this->load->view('premiumseries/index', $this->data);
}
function chi_siamo()
{
$this->data['content_title'] = "Chi Siamo";
$this->data['content_text'] = "Benvenuti nella sezione CHI SIAMO";
$this->load->view('premiumseries/index', $this->data);
}
function prodotti()
{
$this->data['content_title'] = "Prodotti";
$this->data['content_text'] = "Benvenuti nella sezione PRODOTTI";
$this->load->view('premiumseries/index', $this->data);
}
function dove_siamo()
{
$this->data['content_title'] = "Dove Siamo";
$this->data['content_text'] = "Benvenuti nella sezione DOVE SIAMO";
$this->load->view('premiumseries/index', $this->data);
}
function contatti()
{
$this->data['content_title'] = "Contatti";
$this->data['content_text'] = "Benvenuti nella sezione CONTATTI";
$this->load->view('premiumseries/index', $this->data);
}
}
?>
|
Non ho letto l'articolo di cui parli, ma sicuramente capisco quello che intendeva il suo autore.
I dati che generano il menu, ed i relativi sottomenu, vengono creati da un array all'interno del controller,
| Codice: |
$this->data['top_menu']['home'] = anchor('sito','Home',array('title'=>'Home'));
../cut
|
in realtà la creazione di un menu, dovrebbe esser fatta altrove, evitando di sovracaricare il controller della sua funzione basilare, rispettando il canone del pattern MVC (ovviamente, tu puoi farla come ritieni meglio).
Il menu lo puoi generare, dal database, in modo da poter cambiare (Aggiungere, eliminare modificare) lo stesso menu anche da un futuro backend (CMS?).
Oppure lo puoi generare partendo dai dati contenuti in un file di configurazione nella tua application (application/system/config/menu.php).
Puoi anche creare una serie di funzioni in una tua library, che ti permetteranno la generazione di tutto l'albero dei menu ... magari usufruendo di file di configuraizione e dei model ....
insomma, turn on your fantasy 
|
|
|
|
Ultima modifica: 02/06/2011 13:58 Da oVERDRIVE.
Si c'est ici le meilleur des mondes possibles, que sont donc les autres?
-Voltaire
|
|
|
Re:Una prima applicazione 7 Mesi, 1 Settimana
|
Karma: 2
|
|
Grazie Girub per le preziosi indicazioni.
In effetti in questa prima fase vorrei evitare l'uso del dabase, che sarebbe argomento di una lezione successiva. Interessante potrebbe essere la soluzione di creare una file di configurazione menu.php ... potresti darmi una ditratta, cosi miglioro il tutorial?
Tieni presente che sto cercando di creare dei tutorial molto pratici e di inserire volta per volta le indicazioni teoriche necessarie per migliorare l'applicazione e per prendere confidenza con tutto il FW. Insomma un metodo induttivo più che deduttivo.
Grazie per la collaborazione
salvatore
|
|
|
|
|
|
|