Visualizzazione risultati 1 fino 10 di 10

Discussione: Pag + e pag - Per gallery img

  1. #1
    Guest

    Predefinito Pag + e pag - Per gallery img

    ragazzi ho una gallery in cui ho impostato un valore che prende dal db le immagini..
    in pratica funziona con una tabella del database e al raggiungimento di 5 immagini nell gallery dovrebbe creare una nuova pagina ma nn riesco a farlo!
    chi mi aiuta?

  2. #2
    Guest

    Predefinito

    Query esempio:
    Codice PHP:
    SELECT * FROM tabella_img ORDER BY nome LIMIT $inizio, 5
    come vedi c'è una variabile nominata $inizio che deve cambiare ad ogni pagina, ad esempio: $inizio=$pag*5, così alla prima pagina, ad esempio, se $pag=0, la var $inizio sarà 0, a pagina 1 sarà 5, poi 10 ecc. Di conseguenza anche la query cambierà di volta in volta. Ovviamente la variabile $pag dovrai passarla tramite URL.
    Per approfondimenti: http://debug.altervista.org/articoli.php?id=1


    Ciaoo!!!!

  3. #3
    Guest

    Predefinito

    crei due varibili:
    NUM_pag
    range

    fai un controllo dicendo:

    Codice PHP:
    if(!isset($NUM_pag) or $NUM_pag<0)
    $NUM_pag=0;
    $range=5; //numero di immagini a pagina.
    $query = "SELETC id,img... FROM .... ORDER BY ... DESC LIMIT $NUM_pag,$range";
    $result = mysql_query($query,varibile con. database);
    while (
    $row = mysql_fetch_array($result)){

    echo
    "<a href=\"vedi_img.php?id=$row[id]\"><img src=\"percorso/$row[img]\"><br>";


    }

    if (
    $NUM_pag>0)
    {
    $NUM_pag_dietro = $NUM_pag - $range;
    echo
    "<a href=gallery.php?NUM_pag=$NUM_pag_indietro>precedenti</a>";
    }

    $query = "SELECT count(*) AS tot FROM TABELLA";

    $result = mysql_query($query,varibile conn. database);
    $row = mysql_fetch_array($result);

    $pagina = intval(($row[tot]-1) / $range)+1;

    // stampa i range delle query che vanno richiamate.ESEMPIO:50-1=49 / 5 = 9.8 con
    //intval diventa 9+1=10 quindi 10 pagine con 5 immagini a pagina,questo perchè cosi
    //anche se l'ultima pagina è composta da 1,2,3,o 4 immagini è la stessa cosa.


    for ($i=0; $i<$pagine AND $i<10; $i++)
    {
    $NUM_pag_avanti = $i * $range;
    echo
    "<a href=gallery.php?NUM_pag=$NUM_pag_avanti>[" . ($i+1) . "]</a> ";
    }

    if (
    $NUM_pag + $range < $row[tot])
    {
    $NUM_pag_avanti = $NUM_pag + $range;
    echo
    "<a href=gallery.php?NUM_pag=$NUM_pag_avanti>successivi</a>";
    }

    provalo..ciao


    FunCool: Quando scrivi del codice, inseriscilo tra i tag appositi.
    Ultima modifica di funcool : 28-11-2006 alle ore 11.21.55

  4. #4
    Guest

    Predefinito

    ragazzi non ho capito nulla..
    questo e lo script ke prende dalla tabella del db le immagini e le fa visualizzare:
    Xsecott melo potresti mettere/correggere lo script delle pagine??
    Codice PHP:
    <?php
    include ('inc/config.inc.php');
    $nomixpag = 5;
    $pag = $_GET['pag'];
    if (!
    $pag) $pag = 1;
    $totalerisultati = mysql_num_rows(mysql_query("SELECT id FROM gallery"));
    $pagine = ceil($totalerisultati / $pagine);
    $prima = ($pag - 1) * $pagine;
    $vt = mysql_query("SELECT * FROM gallery ORDER BY id DESC LIMIT $prima, $nomixpag");
    $ris = mysql_num_rows($vt);
    if (
    $ris != 0){
    for(
    $x = 0; $x < $ris; $x++){
    $row = mysql_fetch_assoc($vt);
    echo
    '
    <table align="center" width="520" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td>
    <table align="center" border="0" cellspacing="0" cellpadding="0">
    <tr align="center" >
    <td width="170" ><img border="0" src="'
    .$row['New'].'"><br>'.$row['Marca'].'<br>'.$row['Modello'].'</td>
    <td width="170" ><a href="showpic.php?id='
    .$row['id'].'"> <img border="0" src="'.$row['Elaborata'].'" onMouseOver=src="'.$row['Originale'].'" width="160" height="120" onMouseOut=src="'.$row['Elaborata'].'" width="160" height="120"</a><br></td>
    <td width="170" >'
    .$row['Autore'].'</td>
    </tr><br>
    </table>
    </td>
    '
    ;
    }
    }else{
    echo
    "Nessun record trovato!";
    }
    ?> <tr>
    <td>
    <table align="center"> <tr align="center"> <td align="center"> <?
    $paggmeno
    = ($pag - 1);
    $paggpiu = ($pag + 1);
    if (
    $all_pages > 1){
    if (
    $pag > 1){
    echo
    "<a href='gallery.php?pag=$paggmeno'>";
    echo
    "- Pagina Indietro -</a>";
    }
    if (
    $all_pages > $pag){
    echo
    "<a href='gallery.php?pag=$paggpiu'>";
    echo
    "- Pagina Avanti -</a>";
    }
    }
    ?>
    </td></tr></table> </td> <?
    mysql_close
    ();
    ?>
    <tr><td>
    <table>
    <tr>
    <td> Copyright © </td>
    </tr>
    </table>
    </td></tr>
    </td>
    </tr>
    </table>
    Ultima modifica di TuningForLife : 28-11-2006 alle ore 22.06.22

  5. #5
    Guest

    Predefinito

    scusa ma la connessione al database su mysql_query(); esiste?!
    come secondo argomento dovresti di norma passargli una variabile di connessione che non c'è..posta quello che c'è nel file config.inc.php,

    ovviamente cancellando la password che usi per il database!

  6. #6
    Guest

    Predefinito

    config.inc.php
    Codice PHP:
    <?php
    $dbh
    =mysql_connect ("host_mysql", "nome_utente", "password") or die ('I cannot connect to the database because: ' . mysql_error());
    mysql_select_db ("nome_db");
    ?>

  7. #7
    L'avatar di funcool
    funcool non è connesso Utente storico
    Data registrazione
    05-02-2004
    Residenza
    Qui... Non lì, qui!
    Messaggi
    15,433

    Predefinito

    Citazione Originalmente inviato da TuningForLife
    config.inc.php
    Codice PHP:
    <?php
    $dbh
    =mysql_connect ("host_mysql", "nome_utente", "password") or die ('I cannot connect to the database because: ' . mysql_error());
    mysql_select_db ("nome_db");
    ?>
    Completa i campi seguendo questa guida.
    Mattia vi manda a FunCool - Matriz - Directory Gogol - Sfondo rosso per la Birmania
    «Tu mi dai fastidio perché ti credi tanto un Dio!» «Bè, dovrò pur prendere un modello a cui ispirarmi, no?» Woody Allen

  8. #8
    Guest

    Predefinito

    ma i campi erano completi! lii ho solo cancellati io :P
    quello che mi serve e mi aiutate a far creare le pagine automaticamente modificando/aggiungendo allo script ke vi ho dato sopra..

  9. #9
    Guest

    Predefinito

    Codice PHP:
    <?php

    if(!isset($NUM_pag) or $NUM_pag<0)
    $NUM_pag=0;
    $range=5;
    $query1 = "SELECT * FROM gallry ORDER BY id DESC LIMIT $NUM_pag,$range";
    $vt = mysql_query($query1,$dbh);
    if (
    $vt != 0){
    while (
    $row = mysql_fetch_array($vt)){

    echo
    '
    <table align="center" width="520" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td>
    <table align="center" border="0" cellspacing="0" cellpadding="0">
    <tr align="center" >
    <td width="170" ><img border="0" src="'
    .$row['New'].'"><br>'.$row['Marca'].'<br>'.$row['Modello'].'</td>
    <td width="170" ><a href="showpic.php?id='
    .$row['id'].'"> <img border="0" src="'.$row['Elaborata'].'" onMouseOver=src="'.$row['Originale'].'" width="160" height="120" onMouseOut=src="'.$row['Elaborata'].'" width="160" height="120"</a><br></td>
    <td width="170" >'
    .$row['Autore'].'</td>
    </tr><br>
    </table>
    </td>
    '
    ;
    }
    }else{
    echo
    "Nessun record trovato!";
    }
    ?> <tr>
    <td>
    <table align="center"> <tr align="center"> <td align="center">
    <?

    $query
    = "SELECT count(*) AS tot FROM gallry";
    $totalerisultati = mysql_query($query,$dbh);
    $row = mysql_fetch_array($totalerisultati);
    $pagine = intval(($row[tot]-1) / $range)+1;


    if (
    $NUM_pag>0)
    {
    $NUM_pag_indietro = $NUM_pag - $range;
    echo
    "<a href=foto_news.php?NUM_pag=$NUM_pag_indietro>precedenti</a>";
    }


    for (
    $i=0; $i<$pagine AND $i<10; $i++)
    {
    $NUM_pag_avanti = $i * $range;
    echo
    "<a href=foto_news.php?NUM_pag=$NUM_pag_avanti>[" . ($i+1) . "]</a> ";
    }

    if (
    $NUM_pag + $range < $row[tot])
    {
    $NUM_pag_avanti = $NUM_pag + $range;
    echo
    "<a href=foto_news.php?NUM_pag=$NUM_pag_avanti>successivi</a>";
    }


    ?>
    </td></tr></table> </td>
    <?
    mysql_close
    ();
    ?>
    <tr><td>
    <table>
    <tr>
    <td> Copyright © </td>
    </tr>
    </table>
    </td></tr>
    </td>
    </tr>
    </table>

  10. #10
    Guest

    Predefinito

    allora io ho..
    gallery.php
    e _gallery.php

    in gallery.php ce tutta la grafica della pagina con l'include per _gallery.php
    dove si trova lo script..
    se nello script metto per le pagine gallery.php non prende le pagine rimangono le stesse immagini..
    se metto _gallery.php fa vedere anche le altre immagini però senza skin.. è un errore dello script?

    Codice PHP:
    <?php
    include ('inc/config.inc.php');
    if(!isset(
    $pag) or $pag<0)
    $pag=0;
    $range=5;
    $query1 = "SELECT * FROM gallery ORDER BY id DESC LIMIT $pag, $range";
    $vt = mysql_query($query1, $dbh);
    if (
    $vt != 0){
    while (
    $row = mysql_fetch_array($vt)){

    echo
    '
    <table align="center" width="520" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td>
    <table align="center" border="0" cellspacing="0" cellpadding="0">
    <tr align="center" >
    <td width="170" ><img border="0" src="'
    .$row['New'].'"><br>'.$row['Marca'].'<br>'.$row['Modello'].'</td>
    <td width="170" ><a href="showpic.php?id='
    .$row['id'].'"> <img border="0" src="'.$row['Elaborata'].'" onMouseOver=src="'.$row['Originale'].'" width="160" height="120" onMouseOut=src="'.$row['Elaborata'].'" width="160" height="120"</a><br></td>
    <td width="170" >'
    .$row['Autore'].'</td>
    </tr><br>
    </table>
    </td>
    '
    ;
    }
    }else{
    echo
    "Nessun record trovato!";
    }
    ?> <tr>
    <td>
    <table align="center"> <tr align="center"> <td align="center">
    <?

    $query
    = "SELECT count(*) AS tot FROM gallery";
    $totalerisultati = mysql_query($query,$dbh);
    $row = mysql_fetch_array($totalerisultati);
    $pagine = intval(($row[tot]-1) / $range)+1;


    if (
    $pag>0)
    {
    $pag_indietro = $pag - $range;
    echo
    "<a href=_gallery.php?pag=$pag_indietro>precedenti</a>";
    }


    for (
    $i=0; $i<$pagine AND $i<10; $i++)
    {
    $pag_avanti = $i * $range;
    echo
    "<a href=_gallery.php?pag=$pag_avanti>[" . ($i+1) . "]</a> ";
    }

    if (
    $pag + $range < $row[tot])
    {
    $Npag = $pag + $range;
    echo
    "<a href=_gallery.php?pag=$pag_avanti>successivi</a>";
    }


    ?>
    </td></tr></table> </td>
    <?
    mysql_close
    ();
    ?>
    <tr><td>
    <table>
    <tr>
    <td> Copyright © </td>
    </tr>
    </table>
    </td></tr>
    </td>
    </tr>
    </table>

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •