2010-01-31 13 views
6

sto creatting un progetto codeigniter in cui voglio passare una variabile tramite l'URL come una dichiarazione get, in questo modo:
url:/site/torta/1
funzione controller: cake ($ var)
ma quando la variabile viene lasciata vuota, ricevo un errore, come posso ottenere l'igniter di codice, per ignorarlo?codeigniter Passando variabile al controllore utilizzando error URL

+0

Potresti postare quali errori ottieni? –

+0

Un PHP errore è stato rilevato Severity: Avviso Messaggio: argomento 1 mancante per il sito :: torta() Nome file: controller/site.php Linea Numero: 16 – jpoles1

risposta

18

nel controller, fare questo:

function cake($var = null) { 
    // your other code here 
} 

Quando $var non è presente nella URL, esso verrà impostato null e riceverai alcun errore.

+0

funziona! : D Grazie – jpoles1

+0

Grande - Sono contento :) Se la mia risposta ha aiutato, ti dispiacerebbe accettarlo come la risposta corretta? –

+1

Dovresti impostarlo su 'null' invece di' false', dato che 'false' è un valore valido reale. – Chetan

1

Per spiegare perché la risposta di Colin funziona: Il problema riscontrato era che non c'era alcun valore predefinito per quella funzione del controller. In PHP, la creazione di un valore predefinito per un parametro di funzione viene eseguita assegnando un valore nella definizione della funzione ($ var = false). Ora, quando la funzione cake() viene chiamata senza parametri, imposta $ var su false per impostazione predefinita.

Problemi correlati