Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di semolino
    Registrato dal
    Nov 2004
    Messaggi
    1,499

    avanti indietro tra foto

    Forse sbaglio le stringhe per cercare un'argomento sicuramente trattato ma il problema è questo:
    mi trovo all'interno di un elenco di immagini appartenenti ad una categoria. ogni volta che clicco mi si mostra la foto in grande e per vedere l'altra devo tornare indietro ed aprirne un'altra.
    Come posso fare a mettere i pulsantini avanti indietro (e solo avanti o solo indietro qualora fossi all'ultima o alla prima) per scorrere le immagini? In teoria dovrei memorizzare quante immagini ci sono e rifare la query con un +1, -1 ad ogni link?

    Mettiamo di estrarre l'elenco di immagini cosi:
    Codice PHP:
    $sql "SELECT * FROM Img WHERE rif = 2 ORDER BY data DESC"
    grazie

  2. #2
    Utente di HTML.it L'avatar di semolino
    Registrato dal
    Nov 2004
    Messaggi
    1,499
    potrei applicare la paginazione... penso di aver risolto anche qui

  3. #3
    foto successiva
    SELECT * FROM foto WHERE id > $id ORDER BY id LIMIT 1

    foto precedente
    SELECT * FROM foto WHERE id < $id ORDER BY id DESC LIMIT 1

  4. #4
    Utente di HTML.it L'avatar di semolino
    Registrato dal
    Nov 2004
    Messaggi
    1,499
    la situazione è questa:
    da una pagina dove ho tutte le miniature delle immagini, posso cliccarne una a caso e vado nella pagina che la mostra a grandezza normale.
    A quel punto faccio comparire i due link avanti/indietro.
    Mi chiedo i lanciano la variabile con $id=-1/+1 rispetto a quello estratto e ricarico la stessa pagina?
    come posso capire se sono alla prima e ultima posizione x non mostrare uno dei due link?

    Non capisco come posso utilizzare il tuo suggerimento con <>.

    Grazie

  5. #5
    Come dici tu..risolve in parte il problema..in quanto se per esempio cancelli un'immagine, e quindi per esempio ci sarà: foto1, foto2,foto4

    Se sei in foto2 e clicchi su avanti..nn troverà nulla..

    Se invece fai come ti ha detto Tarini, lui andrà a cercare UNA sola foto con id maggiore o minore di quella corrente

    Chiaro adesso?

  6. #6
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,746
    Errare humanum est, perseverare ovest

  7. #7
    Originariamente inviato da carlo2002
    cercavo la stessa cosa http://forum.html.it/forum/showthrea...readid=1181705
    vabbè non è quello che ho detto io??

    partendo dall'id della foto corrente ottieni id della foto precedente e id della foto successiva

  8. #8
    Utente di HTML.it L'avatar di semolino
    Registrato dal
    Nov 2004
    Messaggi
    1,499
    Originariamente inviato da tarini
    foto successiva
    SELECT * FROM foto WHERE id > $id ORDER BY id LIMIT 1

    foto precedente
    SELECT * FROM foto WHERE id < $id ORDER BY id DESC LIMIT 1
    ahhhhh, quindi $id, in questo caso è l'id dell'immasgine estratta che vienbe preso come riferimento per cosa c'è prima e cosa c'è dopo?
    Bene, faccio delle prove... e per capire se non mostrare più il pulsante avanti o oindietro qualora fossi all'ultima immagine e alla prima?

  9. #9
    se la query non ritorna rows significa che non ci sono piu foto

  10. #10
    Utente di HTML.it L'avatar di semolino
    Registrato dal
    Nov 2004
    Messaggi
    1,499
    dunque io clicco sulla foto ew mi trovo all'interno di un case:
    Codice PHP:
    $id_img $_GET['id_img'];

    switch (isset(
    $_GET['what'])) {
    case 
    "avanti" :
        
    //foto successiva
        
    $sql "SELECT * FROM competition_immagini WHERE id_img > $id_img ORDER BY id_img LIMIT 1"
    break;
    case 
    "indietro" :
        
    //foto precedente
        
    $sql "SELECT * FROM competition_immagini WHERE id_img < $id_img ORDER BY id DESC LIMIT 1"
    break;
    default :
    //IN INGRESSO CON VARIABILE WHAT INESISTENTE
        
    $sql "SELECT * FROM competition_immagini WHERE id_img = $id_img";
    break;
        }        
            
    $sort mysql_query($sql,$conn);
            
    $n_sort mysql_num_rows($sort);
        while (
    $row mysql_fetch_array($sort)) {
        echo 
    "<div id=\"categoria\" class=\"pag_link\"><a href=\"boxes/competition.php?type=mostracategoria&id_rif=".$_GET['id_rif']."\" onclick=\"return caricaTesto(this.href);\" onkeypress=\"return this.onclick();\" tabindex=\"1\">[b]TORNA[/b]</a>

    </div>"
    ;
            echo 
    "<table width=\"700\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
            <tr><td align=\"center\">
    <a href=\"boxes/competition.php?what=indietro&type=immagine&id_img="
    .$_GET['id_img']."&id_rif=".$_GET['id_rif']."\" onclick=\"return caricaTesto(this.href);\" onkeypress=\"return this.onclick();\" tabindex=\"1\">indietro</a>
    <a href=\"boxes/competition.php?what=avanti&type=immagine&id_img="
    .$_GET['id_img']."&id_rif=".$_GET['id_rif']."\" onclick=\"return caricaTesto(this.href);\" onkeypress=\"return this.onclick();\" tabindex=\"1\">avanti</a>
    </td></tr>
              <tr><td align=\"center\" width=\"700\"><img src=\""
    .$dir.$row['id_rif']."/".$row['immagine']."\" width =\"700\"></td></tr>
    <tr><td align=\"center\"></td></tr></table>"
    ;
        } 
    perchè ora se clicco su avanti e indietro mi ricarica sempre la stesss foto? dove sbaglio?

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.