Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 29
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727

    richiamare record successivo DI CATEGORIA

    ho letto tanti post simili ma nessuno con la vera soluzione, mi spiego... se ad esempio ho le seguente tabella:

    ID COLORE NOME
    1 nero paolo
    2 rosso luca
    3 giallo mario
    5 verde pippo
    6 rosso mimmo

    a schermo ho stampato il record 2 (rosso, luca) e voglio mettere un link che mi faccia andare al successivo record della STESSA categoria (id 6: rosso, mimmo), come faccio?
    per ora facendo così--->

    <a href="pagina.php?id=<?$query = "select * from tab where id < '$id' ORDER BY id DESC LIMIT 1";
    $dati = mysql_query($query);
    $array = mysql_fetch_array($dati);
    print $array[id];
    ?>"></a>

    sono riuscito a scorrere gli ID saltando quelli mancanti, quindi nel mio esempio dal 5 passa al 3 e viceversa ma non so come fare ad ottenere lo stesso risultato where categoria like rosso...

  2. #2
    Utente di HTML.it L'avatar di ttcc
    Registrato dal
    Dec 2008
    Messaggi
    489
    c'è un ragionamento logico perchè vuoi l'id 6 dopo aver l'output dell'id 2???

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727
    il ragionamento è questo: ho a video un record ROSSO (il 2) e offro agli utenti la possibilità di vedere gli altri record rossi, esempio: clicca qui per visualizzare il prossimo record rosso
    nel mio esmpio stupido il record rosso successivo è il 6
    Esempio + veritiero: db con vari libri di vari generi: clicca qui per vedere il prossimo ROMANZO e la query va a prendere il prossimo id della categoria romanzi saltando i gialli ecc ecc
    Ultima modifica di theseo; 21-04-2014 a 16:49

  4. #4
    Utente di HTML.it L'avatar di ttcc
    Registrato dal
    Dec 2008
    Messaggi
    489
    Quote Originariamente inviata da theseo Visualizza il messaggio
    il ragionamento è questo: ho a video un record ROSSO (il 2) e offro agli utenti la possibilità di vedere gli altri record rossi, esempio: clicca qui per visualizzare il prossimo record rosso
    nel mio esmpio stupido il record rosso successivo è il 6
    Esempio + veritiero: db con vari libri di vari generi: clicca qui per vedere il prossimo ROMANZO e la query va a prendere il prossimo id della categoria romanzi saltando i gialli ecc ecc
    di solito strutture del genere io le organizzo con degli array, quindi $row[0] in un div $row[1] in un altro div e così via. naturalmente l'array deve corrispondere al tipo di valore che scegli.. nel tuo esempio "rosso"... alla tabella aggiungerei un campo con commento che accompagnerà l'array.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727
    grazie per la risposta ma mi scrivi per piacere 2 righe di esempio? sono un cavernicolo del php e faccio un pò fatica a mettere in pratica il tuo suggerimento...

  6. #6
    Utente di HTML.it L'avatar di ttcc
    Registrato dal
    Dec 2008
    Messaggi
    489
    Quote Originariamente inviata da theseo Visualizza il messaggio
    grazie per la risposta ma mi scrivi per piacere 2 righe di esempio? sono un cavernicolo del php e faccio un pò fatica a mettere in pratica il tuo suggerimento...
    Codice PHP:
    <?php
    $colore
    =array();
    $id=array();
    $nome=array();
    $query "select id, colore, nome from tab where  colore= 'rosso'";
    $dati mysql_query($query);
    while(
    $row mysql_fetch_array($dati))
    {
    $colore[] =$row['colore'];
    $id[] =$row['id'];
    $nome[]=$row['nome];
    }
    ?>
    <div id="1">
        <?php 
            echo $colore[0]; 
            echo $id[0];
            echo $nome[0];    
        ?>
    </div>
    <div id="2">
        <?php 
            echo $colore[1]; 
            echo $id[1];
            echo $nome[1];    
        ?>
    </div>
    .......e cosi via
    approssimativamente... poi, dipende come arrivi alla pagina di output, dai contenuti o anche dall'eventualità di passare a specifica pagina per ogni contenuto della tab.

  7. #7
    Quote Originariamente inviata da theseo Visualizza il messaggio
    il ragionamento è questo: ho a video un record ROSSO (il 2) e offro agli utenti la possibilità di vedere gli altri record rossi, esempio: clicca qui per visualizzare il prossimo record rosso
    nel mio esmpio stupido il record rosso successivo è il 6
    Esempio + veritiero: db con vari libri di vari generi: clicca qui per vedere il prossimo ROMANZO e la query va a prendere il prossimo id della categoria romanzi saltando i gialli ecc ecc
    Se devi selezionare una o più righe nel database DOVE hai la CATEGORIA che ti interessa, il campo WHERE nella query deve essere riferito alla CATEGORIA non all'id.

    Codice PHP:
    $query "select * from tab where CATEGORIA = "CATEGORIA SELEZIONATA" ORDER BY id DESC LIMIT 1"

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727
    uh guarda ho provato già così ma mi viene fuori un link vuoto, ossia usando l'esempio di sopra viene fuori--> pagina.php?id=
    mentre se tolgo dalla query il where di categoria viene fuori un link completo--> pagina.php?id=345 ecc

  9. #9
    Quote Originariamente inviata da theseo Visualizza il messaggio
    uh guarda ho provato già così ma mi viene fuori un link vuoto, ossia usando l'esempio di sopra viene fuori--> pagina.php?id=
    mentre se tolgo dalla query il where di categoria viene fuori un link completo--> pagina.php?id=345 ecc
    Staccato ora..
    la mia query di esempio non è completa per quello che vuoi ottenere, era solo per farti capire il concetto.. ( es. se cerchi dei vasi rossi, chiedi dei vasi rossi, non chiedi gli oggetti che sullo scaffale sono ai primi 5 posti.. )
    Devi inserire dei LIMITI e OFFSET o altro ancora per selezionare la seconda occorrenza del database nella stessa categoria. Adesso con mysql non ricordo che comandi ci sono a disposizione, bisognerebbe consultare il manuale.
    Ultima modifica di W Thunderbird; 22-04-2014 a 00:33

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727
    ok capito ma mi dovreste aiutare con esempi un pò concreti xchè, come ho detto prima... sono un self made man del php e faccio un pò fatica a passare dalla teoria alla pratica, invece se vedo un esempio riesco abb bene a modificarlo x le mie esigenze...

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.