Controller CodeIgniter, routing delle viste: impara con l'app di esempio

Sommario:

Anonim

In questo tutorial imparerai i seguenti argomenti.

  • Routing : il routing è responsabile della risposta alle richieste URL. Il routing fa corrispondere l'URL ai percorsi predefiniti. Se non viene trovata alcuna corrispondenza di percorso, CodeIgniter genera una pagina non trovata un'eccezione.
  • Controller : le rotte sono collegate ai controller. I controller incollano insieme i modelli e le viste. La richiesta di dati / logica di business dal modello e restituisce i risultati nella presentazione della vista. Una volta che un URL è stato abbinato a una rotta, viene inoltrato alla funzione pubblica di un controller. Questa funzione interagisce con l'origine dati, la logica aziendale e restituisce la vista che mostra i risultati.
  • Visualizzazioni : le visualizzazioni sono responsabili della presentazione. Una visualizzazione è solitamente una combinazione di HTML, CSS e JavaScript. Questa è la parte responsabile della visualizzazione della pagina web all'utente. In genere, i dati visualizzati vengono solitamente recuperati dal database o da qualsiasi altra origine dati disponibile.

In questo tutorial imparerai-

  • Come creare un nuovo progetto CodeIgniter
  • CodeIgniter Routing
  • Crea un percorso
  • Crea un controller
  • Crea una vista

Come creare un nuovo progetto CodeIgniter

Useremo Composer per creare un nuovo progetto. Userò il server PHP integrato, quindi non è necessario disporre di software aggiuntivo come Apache. In questo tutorial, utilizziamo il sistema operativo Windows. Pertanto, abbiamo creato una cartella Sites sull'unità C. Puoi utilizzare qualsiasi directory adatta a te.

Apri la riga di comando / terminale ed esegui il seguente comando

cd C:\Sites

Creeremo ora un progetto CodeIgniter utilizzando Composer. Esegui il seguente comando

composer create-project CodeIgniter/framework ci-app

QUI,

  • Il comando precedente crea una nuova versione 3 del progetto CodeIgniter utilizzando l'ultima versione stabile, ovvero 3.1.9 in una directory ci-app.

Quando il comando precedente è stato completato, dovresti essere in grado di ottenere risultati simili ai seguenti nel terminale

Eseguire il comando seguente per passare alla directory del progetto appena creata ci-app

cd ci-app

Avviamo ora il server web integrato in PHP

 php -S localhost:3000 

QUI,

  • Il comando precedente avvia il server PHP integrato in esecuzione sulla porta 3000.

Apri il browser web e sfoglia il seguente URL

http: // localhost: 3000 /

Otterrai la pagina seguente

Se riesci a vedere la pagina sopra, congratulazioni, hai installato correttamente CodeIgniter.

Come puoi leggere dalla pagina web sopra, la pagina mostrata sopra è rappresentata dalla vista situata in application / views / welcome_message.php e il controller responsabile si trova in application / controllers / Welcome.php

CodeIgniter Routing

Per ora, la nostra applicazione ha un solo URL che è la home page. In questa sezione personalizzeremo la sezione home. Creeremo alcuni nuovi URL che risponderanno alle diverse richieste.

Cominciamo con il percorso della home page

Apri il file delle rotte come indicato dal percorso sottostante

application/config/routes.php
Dovresti essere in grado di vedere il seguente contenuto
$route['default_controller'] = 'welcome';$route['404_override'] = '';$route['translate_uri_dashes'] = FALSE;

QUI,

  • $ route ['default_controller'] = 'benvenuto'; definisce il controller predefinito che risponde alle richieste URI
  • $ route ['404_override'] = ''; questo percorso consente di definire un percorso personalizzato per gli errori 404. Un errore 404 si verifica quando una pagina non viene trovata. CodeIgniter ha un gestore predefinito per l'errore ma puoi definirne uno tuo se lo desideri.
  • $ route ['translate_uri_dashes'] = FALSE; questa opzione ti consente di tradurre i trattini in trattini bassi. Parleremo di questa opzione quando esamineremo come funzionano le rotte in CodeIgniter.

Diamo ora un'occhiata al metodo del controller responsabile della visualizzazione della home page che abbiamo visto quando abbiamo aperto l'URL http: // localhost: 3000 / nel browser web

Apri il seguente file

application/controllers/Welcome.php

Dovresti essere in grado di vedere il codice seguente

load->view('welcome_message');}}

QUI,

  • Definito ('BASEPATH') OR exit ('Nessun accesso diretto allo script consentito'); protegge dall'accesso diretto alla classe controller senza passare attraverso il file index.php. Ricorda, nel paradigma MVC tutte le richieste hanno un unico punto di ingresso e, per CodeIgniter, il suo index.php. Questo codice blocca tutte le richieste che non arrivano tramite index.php
  • class Welcome extends CI_Controller {…} definisce una classe Welcome che estende la classe genitore CI_Controller
  • funzione pubblica index () definisce una funzione pubblica che viene chiamata per impostazione predefinita quando apri la homepage
  • $ this-> load-> view ('welcome_message'); questa riga carica la vista welcome_message. Il file welcome_message si trova nella directory application / views / welcome_message.php

Finora abbiamo esplorato solo ciò che viene fuori dagli schemi con CodeIgniter, proviamo ora ad apportare alcune modifiche. Creeremo la nostra home page e sostituiremo la pagina predefinita

Crea un nuovo file in application / views / home.php

Aggiungi il seguente codice a home.php

Hello CodeIgniter!

CodeIgniter Hello World

QUI,

Il codice HTML sopra carica il framework e il font Burma SSS dalla rete CDN per creare un documento HTML molto semplice. Applica una regola CSS molto semplice dal framework Burma CSS.

Apri il seguente URL nel tuo browser

http: // localhost: 3000 /

Dovresti essere in grado di vedere quanto segue

Ottimo, abbiamo appena modificato con successo la home page. Andiamo avanti, definiamo il nostro percorso. Supponiamo che anche la nostra applicazione debba essere in grado di mostrare la pagina Chi siamo.

Crea un percorso

Apri il file delle rotte application / config.routes.php

Aggiungi il seguente percorso

$route['about-us'] = 'welcome/about_us';

QUI,

  • Quando un visitatore visita l'URL / about-us, stiamo istruendo CodeIgniter a cercare un controller di benvenuto ed eseguire il metodo about_us.

Crea un controller

Definiamo ora il metodo del controller su di noi

Apri application / controllers / Welcome.php

Aggiungi il seguente metodo

public function about_us(){$this->load->view('about_us');}

QUI,

  • Il codice precedente definisce una funzione about_us e carica una vista about_us.

Crea una vista

Creiamo ora la vista a cui abbiamo appena fatto riferimento nella sezione precedente

Crea un nuovo file about_us.php in application / views / about_us.php

Aggiungi il codice seguente

About CodeIgniter!

About us yap…

Siamo a posto, apri il seguente URL nel tuo browser web

http: // localhost: 3000 / index.php / chi siamo

Vedrai la pagina seguente

Se riesci a vedere la pagina sopra, congratulazioni, hai creato con successo una semplice applicazione in CodeIgniter.

Sommario

In questo tutorial, abbiamo coperto tre (3) componenti principali che compongono un'applicazione CodeIgniter. Abbiamo esaminato le rotte e come definirle, i controller e come creare metodi che rispondano alle richieste di instradamento e abbiamo creato semplici visualizzazioni che vengono restituite agli utenti quando richiedono una risorsa.