Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    38

    come risalgo al link selezionato da una lista?

    Salve a tutti
    vorrei chiedervi se esiste un modo per sapere quale link ho selezionato da una serie di link.
    Ovvero ho il seguente codice:

    <?php
    $alfa = range('A','Z',1);
    foreach ($alfa as $key => $value)
    {
    echo " $value\t";
    }

    ?>

    Creo una lista con le lettere dell'alfabeto, quello che vorrei fare è mettere in href una sola pagina e l'operazione che andrò ad eseguire dipende dalla lettera usata. E' possibile sapere quale lettera è stata selezionata?

    spero che il problema sia chiaro. Vorrei evitare di avere 21 file diversi in href visto che andrò a fare un'interrogazione al db per tutti e che cambia solo la lettera selezionata.

  2. #2
    Passa la lettera come variabile GET alla pagina. Devi creare url in maniera "urldelloscript.php?variabile=valore"

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    38
    Grazie della risposta mi informo subito su quello che mi hai detto.
    Ma potresti essere più chiaro? Io sono leggermente poco esperto quindi riusciresti a farmi un breve esempio?

  4. #4
    Utente di HTML.it L'avatar di wino_7
    Registrato dal
    Dec 2006
    Messaggi
    537
    codice:
    <?php
    $alfa = range('A','Z',1);
    foreach ($alfa as $key => $value)
    {
    echo "  $value\t";
    }
    
    ?>
    dove $var contiene ad ogni ciclo una lettera diversa.

    Poi nella pagina a cui punta il link, puoi catturare il valore del parametro lettera in questo modo

    codice:
    $lettera = $_GET['lettera'];
    poi puoi farci quello che vuoi ad esempio
    codice:
    SELECT * FROM mytable WHERE lettera = '$lettera';
    Spero di essere stato chiaro, ciao ciao

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    38
    Wino sei stato chiarissimo e grazie anche per aver scritto il codice ....
    ho solo un dubbio residuo
    che significa href='pagina?lettera=$var'
    ovvero so che posso mettere ad esempio href='A.php' quindi specificando la nuova pagina,
    ma in questo caso cosa è 'pagina?lettera=$var' ? cioè dovrò scrivere una pagina php dal nome pagina?

  6. #6
    Utente di HTML.it L'avatar di wino_7
    Registrato dal
    Dec 2006
    Messaggi
    537
    Allora devi sapere che esistono due metodi per inviare dati dal client (nel nostro caso browser web) al server, uno è quello di accodare i dati alla richiesta HTTP tramite il metodo POST (il metodo usato per inviare dati tramite form HTML) e l'altro è quello di accodare i dati nell'url sotto questa forma (solitamente usato per i link delle pagine web):
    Codice PHP:
    [url]http://www.miosito.it/prodotti.php?id=1&nome=pantalone[/url] 
    in questo modo quando il server riceve questa richiesta sa che deve eseguire lo script contenuto nella pagina prodotti.php e prelevare le due variabili id e nome.
    Per fare questo devi "catturare" i dati tramite le istruzioni
    codice:
    $id = $_GET['id'];
    $nome = $_GET['nome'];
    In questo modo valorizzi le tue variabili con i valori che il client ha inviato al server, quindi la variabile $id conterrà la stringa 1 mentre la variabile $nome conterrà la stringa pantalone.
    (Ricorda che nella rete i dati viaggiano sottoforma di testo quindi il valore 1 è considerato stringa, sta a te convertirlo in dato numerico se devi effettuarci delle operazioni tipo incremento)
    A questo punto puoi eseguire le query al database inserendo tali parametri.

    Spero di essere stato chiaro.

    P.s. se vuoi vedere realmente come avvengono le richieste e risposte tra client e server puoi fare uso del plugin per Firefox chiamato Live http headers, così capirai bene di cosa sto parlando.

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    38
    Perfetto
    Ti ringrazio molto ho già provato la prima soluzione è funziona tutto...
    cercherò di seguire anche gli ultimi suggerimenti...
    grazie 1000!!!!

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.