Come risolvere il settaggio $config[‘base_url’] nel file config.php con codeigniter framework, mosse tattiche per far funzionare il tutto

Meno male con CI Framework non ci si annoia mai! Ipotizziamo che stiamo lavorando su un progetto con URL lunghissimo e magari all’ interno di una ulteriore sottodirectory, prendiamo il caso di http://nomedidominio.org/nomediprogetto/ come si sa questa striscia di dati va inserita nel file config.php presente dentro la cartella CONFIG presente dentro la cartella APPLICATION e quindi il tutto diventa

$config['base_url'] = 'http://nomedidominio.org/nomediprogetto/';

ok adesso prendo la inserisco all’ interno di un path ad esempio per un link:

<a href='<?php base_url();?>index.php/nomecontroller/metodo?id=<?php echo $result->id ?>'>

carico il tutto via FTP e cosa ottengo? Che non funziona nulla! Come mai? Dopo una rapida occhiata il NEWBIE che dopo venti giorni di attività su CI ha imparato qualcosa scopre che manca l’istruzione per stampare a video il valore della stringa, quindi corregge inserendo echo e fa diventare il tutto:

<a href='<?php echo base_url();?>index.php/nomecontroller/metodo?id=<?php echo $result->id ?>'>

dopodiché salva carica via FTP il tutto e va a vedere l’effetto che fa per scoprire che comunque non funziona, il link non sta lavorando, quindi quale é adesso il problema? Non siamo nati imparati quindi bisogna cercare in rete e troviamo la soluzione da chi ha già attraversato queste valli di lacrime:

In order to use base_url(), you must first have the URL Helper loaded. This can be done either in application/config/autoload.php (on or around line 67): $autoload[‘helper’] = array(‘url’); or, manually: $this->load->helper(‘url’); Once it’s loaded, be sure to keep in mind that base_url() doesn’t implicitly print or echo out anything, rather it returns the value to be printed: echo base_url();

Interessante comunque la parte che dice “una volta caricato, assicurati di tenere presente che base_url () non stampa implicitamente o echeggia nulla, piuttosto restituisce il valore da stampare: echo base_url (); WOW! Perfetto quindi bisogna caricare la libreria di funzioni dedicate con $this->load->helper(‘url’); per esempio oppure con il configuratore automatico $autoload[‘helper’] = array(‘url’); una volta fatta questa operazione finalmente scopriamo che tutto funziona!

Codeigniter dacci oggi il nostro apprendimento quotidiano in una formazione continua! E sempre sia lodato!

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google photo

Stai commentando usando il tuo account Google. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...