Originariamente inviato da }gu|do[z]{®©
A
//inizializzo come stringa vuota una variabile querystring che
//appendo sempre ai miei link... quindi la lascio vuota se non mi
//serve, la modifico come spiegato più avanti se mi serve
$querystring = "";
//eventuale modifica alla query string
//OMESSA PER ORA
/
Per la modifica [FACOLTATIVA] della querystring:
poniamo che abbia fatto un motore di ricerca e lo script mi serva per paginare i risultati. E' chiaro che se la mia pagina prenderà una variabile chiamata $chiave che indichi la chiave di ricerca, questa vada passata A TUTTE LE PAGINE della stampa dei risultati, e non solo alla prima pagina.
Come fare?
Semplicissimo:
if ($chiave != '') $querystring .= "&chiave=$chiave";
in questo modo la querystring appesa ai link non è + vuota, e fa il suo dovere.
Sorge però un potenziale problema al di fuori di questo file, ovvero nello script che lo include: la variabile letta da query string è passata con il metodo GET... invece il form per il motore di ricerca che abbiamo ipotizzato potrebbe funzionare con il metodo POST.. avremmo quindi che nella prima pagina la variabile proverrà da un POST, nelle seguenti da un GET... la cosa ci crea qualche problema con le recenti versioni PHp in quanto di default è disattivata la registrazione delle variabili globali e dovremmo estrarre la variabile dall'opportuno array.. ma dato che questo array potrebbe variare, come fare? Beh.. semplice... se non siete certi che il metodo con cui passate variabili usate nell'interrogazione del database sia il metodo GET... nella pagina in cui è inclusa la paginazione usate assegnazioni del genere prima di usare queste variabili:
$chiave = isset($_POST['chiave'])? $_POST['chiave'] : $_GET['chiave'];
Ovviamente dovrete farlo per ogni variabile cambiando la parola "chiave" con il nome della variabile in questione.
E questo è davvero tutto sulla creazione del menu dinamico di link alle pagine.