Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23
  1. #1

    Struttura per richiamare pagine

    Salve ragazzi, avrei una curiosità.
    Per richiamare le pagine nella parte centrale del sito utilizzo la pagina controll.php
    in questo modo:
    codice:
    //nella index.php
    <div class="menu">
    Home
    Chi Siamo
    
    </div>
    
     <div id="content"> 
    <?php include('controll.php');?>
    </div>
    <div id="footer"></div>
    Nella pagina controll.php
    Codice PHP:
    if ($_GET['p']=='home') {
        include (
    'home.php');
    }
    elseif(
    $_GET['p']=='c_s'){
        include (
    'chi_siamo.php');
    }
    else{
        include (
    'home.php');

    1) Vorrei sapere se questo è uno dei metodi giusti per richiamare le pagine.
    2) se ce ne sono altri migliori

    Poi, ammettendo il caso che richiami le pagine attraverso AJAX in questo modo:
    codice:
    load 2
    Sapreste dirmi cortesemente, se è possibile intercettare il valore 'home' subito dopo l'hash?
    Per il momento vi ringrazio e vi auguro una buona giornata.

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    539
    per poche condizioni ok, se iniziano ad essere un pò di più allora al posto di if...elseif puoi usare uno switch; se poi le pagine sono numerose allora a questo punto utilizza un array e via!

  3. #3
    Ti ringrazio per la risposta.
    Cmq ho sui 180 link...cosa mi consigli?

    Ti chiedo una cortesia, puoi farmi un esempio con lo switch e uno con gli array?
    ti ringrazio molto gentile

  4. #4
    Originariamente inviato da ANTAGONIA
    Ti ringrazio per la risposta.
    Cmq ho sui 180 link...cosa mi consigli?

    Ti chiedo una cortesia, puoi farmi un esempio con lo switch e uno con gli array?
    ti ringrazio molto gentile
    Puoi evitarti if e switch.

    codice:
    include $_GET['p'].'.php';
    Poi ti basta passare la variabile della sezione con il nome della pagina, per capirci, invece di "c_s", "chi_siamo", in questo modo se ti dovesse tornare utile utilizzare il mod_rewrite sei gia in linea oltre ad evitarti if e switch inutili

  5. #5
    Originariamente inviato da serialkiller
    Puoi evitarti if e switch.

    codice:
    include $_GET['p'].'.php';
    Poi ti basta passare la variabile della sezione con il nome della pagina, per capirci, invece di "c_s", "chi_siamo", in questo modo se ti dovesse tornare utile utilizzare il mod_rewrite sei gia in linea oltre ad evitarti if e switch inutili

    Ti ringrazio.
    Ma ho qualche curiosità:
    1) in questo modo include $_GET['p'].'.php'; se ho una pagina dentro una cartella tipo:
    ChiSiamo/chi_siamo.php come faccio?

    2) Per l'utilizzo di mod_rewrite:
    Se per esempio volessimo trasformare l'URL: "www.miosito.it/index.php?page=news" nella più semplice: "www.miosito.it/news.html", potremo scrivere il nostro ".htaccess" in questo modo:

    RewriteEngine on
    RewriteRule ^/news\.html$ /index.php?page=news [L]

    Domanda: a questo punto, dovrei creare un .htaccess con il RewriteRule per tutti i link?

    grazie ancora...

  6. #6
    altro giro altra corsa.
    Purtroppo con il sistema che ho postato non mi manteneva, al refresh del sito, la pagina che stavo visualizzando...
    E mi è venuto in mente di fare in questo modo:
    Codice PHP:
    //se ho cliccato su un qualsiasi link del menu
    if ($_GET['p']!="") {
    //registro la sessione
            
    session_register("ppp");
    //assegno alla sessione il valore che ho scelto attraverso il link
            
    $_SESSION['ppp'] = $_GET['p'];
        }
    //altrimenti, se non ho scelto di visualizzare una pagina diversa da quella che sto visualizzando, attraverso questo modo, ri-assegno il valore della sessione alla GET, per poter gestire nuovamente tutte le chiamate alle pagine.
        
    else{
            
    $_GET['p'] = $_SESSION['ppp'];
        } 
    Stranamente funziona,

    Ma sono sicuro che non è il modo migliore per gestire questa cosa...
    Sapete dirmi qualcosa a riguardo?
    grazie ancora

  7. #7
    Io comunque t consiglierei di non utilizzare ajax per far visualizzare il contenuto della parte centrale.

    Potresti penalizzarne l'indicizzazione.

  8. #8
    rischio di dire una fesseria... ma la dico (pronto ad essere rettificato)

    fare
    <?php include($_GET['p'].'.php'); ?>

    è il peggiore uso possibile che si possa fare delle variabili $_GET...

    Infatti la loro valorizzazione è controllabile al 100% dall'utente il quale nella barra degli indirizzi può scrivere ciò che gli pare...

    Se ad esempio scivesse manualmente:

    link.php?p=nome_di_un_file_protetto

    nella pagina web link.php verrebbe ad essere incluso il file "nome_di_un_file_protetto.php"
    addirittura potrebbe fare percorsi

    link.php?p=../cartella/nome_di_un_file_protetto

    insomma io per quel pò che ho capito di $_GET e include questo mi sembra un sistema sbagliatissimo e pericolossissimo

  9. #9
    Originariamente inviato da Samleo
    Io comunque t consiglierei di non utilizzare ajax per far visualizzare il contenuto della parte centrale.

    Potresti penalizzarne l'indicizzazione.
    Scusami, e allora per non far ricaricare tutto il sito come devo fare?
    Questa mi sembrava l'unica soluzione, che mi rendeva la richiesta delle pagine velocissima.
    Se però ci sono altri metodi, sono tutto orecchi..
    grazie mille

  10. #10
    cmq come ho fatto, anche se apparentemente va bene, purtroppo non mi permette di poter utilizzare l'opzione torna indietro.
    Quindi, la devo abbandonare....che cogli..i

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 © 2025 vBulletin Solutions, Inc. All rights reserved.