Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    278

    Gestire gli url con codeigniter

    Salve a tutti.

    Sto usando il framework codeigniter e mi trovo intoppata nella gestione degli url,mi spiego meglio:

    Ho un top menu con dei link che ogni collegamento fa riferimento ad un certo contenuto come per esempio:chi siamo,dove siamo,gallery,contatti etc...
    Ogni link ha un url di riferimento come:

    index.php&action=contatti;

    e si cerca di caricare la pagina contatti

    oppure

    index.php&action=gallery

    in questo caso cerco di caricare la pagina gallery.

    Il problema sta nel fatto che non so come caricare le pagine nella index ho provato anche ad impostare:

    $config['enable_query_strings'] = true;

    ma nulla,mi dice sempre pagina non trovata!!

    Non so proprio come fare!!

    graziee

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    278
    nessuno?

  3. #3
    Non ho capito del tutto il problema; ma presumo che hai un'index.php che include varie sottopagine, di cui una contiene il top menu, che contiene link, che se cliccati fanno variare un'altra sottopagina (content.php).
    Se è così forse ti so aiutare.

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    35
    se non ricordo male codeigniter usa un sistema di urlrewriter che devi disabilitare se vuoi ottenere quello che dici tu. Non lo uso da parecchio quindi non ricordo con precisione, però se non erro all'inizio della documentazione dovrebbe spiegare come fare.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    278
    Ho una index.php che mi visualizza il template con la schermata di home page e fin qui tutto ok.
    Ho un template a due colonne con l'header,il top menu,la sidebar a sinistra, la content_page e il footer.
    Voglio in pratica che a seconda del link a cui faccio riferimento,mi cambi il contenuto nella content_page,gestito dalla variabile $content_page come per esempio:

    Questo è il layout di destra,ovvero la content_page:
    <div id="content">

    echo $content_page;
    </div>

    quindi nel controller avro' una cosa del genere:

    if(isset($_GET['action']))
    {
    $action=$_GET['action'];
    //a seconda del valore di action carico il template di riferimento
    $data['content_page'] =file_get_contents("html/".$action.".html");
    $this->load->view('index',$data);
    }

    la gestione degli url con querystring normalmente la so fare,non so come va gestita con codeigniter!!

    graziee!

  6. #6
    Forse basta solamente sostituire:

    index.php&action=contatti;

    con

    index.php?action=contatti;

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    35
    forse capisco male io il tuo problema. Comunque prova a dare un'occhiata qui http://codeigniter.com/user_guide/general/urls.html . Come vedi devi impostare nel config.ini
    Codice PHP:
    $config['enable_query_strings'] = TRUE;
     
    $config['controller_trigger'] = 'c'
    $config['function_trigger'] = 'm'
    e ricordati che comunque devi richiamare il controller apposito con la sua azione utilizzanfo le shorttag che definisci in controller_trigger e function_trigger che di default sono 'c' e 'm'.
    Quindi l'url si trasformerebbe in

    codice:
    index.php?c=controller&m=method
    il metodo se non richiamato chiama il metodo costruttore del controller .Quindi per il tuo caso se tu vorresti chiamare la pagina contatti devi scrivere

    codice:
    index.php?c=contatti

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    278
    Si hai capito quello che intendo,provo e ti faccio sapere...
    grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.