Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: Scorrere un array

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    323

    Scorrere un array

    Salve a tutti, io ho una domanda:

    come faccio a scorrere un array a "passi"?

    $nome = array ("giorgio","nicola","filippo");
    io vorrei fare una pagina in cui é possibile scorrere i nomi di un array tramite i pulsanti

    <<PREV NEXT>>
    e nella stessa pagina viene visualizzato un nome alla volta.

    Ad esempio se inizio da Giorgio viene visualizzato solo GIORGIO. se clicco NEXT viene visualizzato NICOLA, se clicco NEXT viene visualizzato FILIPPO, se clicco PREV viene visualizzato NICOLA.


    Qualcuno ha un'idea?

    grazie a tutti

  2. #2
    gli array sono composti da indice e valore

    $nome[0] = "giorgio"
    array[indice] = valore

    fai due link e passi (tramite GET) il valore precedente e il valore successivo della chiave che stai facendo vedere

    all'avvio dello script se la chiave che hai passato per get esiste, la recuperi e fai vedere il nome dell'array corrispondente a quella chiave, altrimenti fai vedere la prima
    Perchè essere stupidi non è una menomazione ma un diritto di tutti!!!

  3. #3
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    usare get e' una sol, se nn vuoi far vedere i valori usa una session o un cookie.

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    323
    Come potrei fare? con le sessioni?

    Grazie dell'aiuto

  5. #5
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    con sessioni prima di stampare a video qlsiasi cosa fai

    session_start();

    /*fai i controlli del caso*/

    if( isset($_SESSION['nome_var']) )
    {
    /*leggi il contenuto e incrementalo*/

    $tmp = $_SESSION['nome_var'];
    $_SESSION['nome_var'] ++;

    }
    else
    $_SESSION['nome_var'] = $valore_di_partenza;


    A questo pto ogni volta che farai session_start(), per la session dello specifico utente verra' salvato lato server il dato che ti interessa e verra' incrementato.
    Ovviamente l'icremento lo puoi gestire anche sotto o come piu' preferisci.

    Cosi' non devi star la a mostrare in get i dati.
    Ovviamente devi fare attenzione a incrementi/decrementi .

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    323
    io ho un array cosi' modificato:

    $arr[0] = 'Giorgio';
    $arr[1] = 'Nicola';
    $arr[2] = 'Filippo';

    ora se clicco Nicola, la pagina mi visualizza view.php?dato=1

    ora il mio problema consiste nel creare un valore che incrementa +1 se clicco NEXT e -1 se clicca PREV. Ossia devo crearmi un form con auto submit, che in base alla parola (NEXT o PREV) passi -1 o +1.

    Come potrei fare?

    grazie a tutti della pazienza.

    <form>
    NEXT <input type="hidden" value="1" name="count">
    PREV <input type="hidden" value="-1" name="count">
    </form>
    o qlc del genere

  7. #7
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    si puoi farlo puoi fare un link che spedisca come parametro una stringa tipo url/file.php?goto=next/prev

    cosi' l'utente nn vede il codice effettivo, ma puoi anche altresi fare in modo che sia phpa generare la form e ti metta l'indice della risorsa dove devi arrivare.

    Le soluzioni da sto pto di vista sono equivalenti sta solo a te decidere quale e' la piu' comoda o la migliore nel tuo caso.

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    323
    Non so come fare il form

    dovrei fare una cosa del genere?

    Se ad esempio sono in view.php?view=2


    [....]
    <? $view = $_GET['view'];

    Ovviamente ci stanno i controlli sull'indice che qua non scrivo

    ?>

    PREV
    NEXT

    Oggi non posso provare in quanto il server é offline.

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    323
    Grazie a tutti, risolto.
    Veramente gentili

  10. #10
    Non so se ti possa ancora servire, ma puoi provare ad usare le funzioni NEXT() e PREV().

    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

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.