Visualizzazione risultati 1 fino 4 di 4

Discussione: problema gallery immagini php mysql

  1. #1
    Guest

    Predefinito problema gallery immagini php mysql

    Mediante la guida presente su php.html.it ho creato la mia galleria d'immagini personale.


    Sono giorni che la guardo e la riguardo ma non trovo l'errore. A video nn stampa un errore ma è come se ci fosse, perchè se c'è una sola immagine, allora lo script funziona correttamente, ma appena glie ne si aggiunge un'altra o di + lo script aggiunge delle pagine e anche se le si cliccano le immagini rimangono sempre le stesse, non cambia pagina.. Spero di essermi spiegato bene, di seguito vi riporto il codice della galleria:
    Codice PHP:
    <table cellpadding="2" cellspacing="0" border="0" width="100%">
    <?php
    if (isset($_GET['tid']))
    {

    $tid = $_GET['tid'];

    if (!isset(
    $start) OR $start<0)
    {
    $start = 0;

    $step = 4;

    $query1 = "SELECT * FROM tfn_images WHERE tid='$tid' AND type='a' ORDER BY id DESC LIMIT $start, $step";

    $results1 = mysql_query($query1) or die (mysql_error());

    while (
    $row1 = mysql_fetch_array($results1))
    {
    $tid = $_GET['tid'];

    $width = 150;

    $div = $row1['width'] / $width;
    $nh = $row1['height'] / $div;

    echo
    "<tr><td align=\"center\" width=\"40%\"><a href=\"$row1[image]\"><img src=\"$row1[image]\" width=\"$width\" height=\"$nh\" /></a></td><td style=\"background-color: #ECE9D8;\" valign=\"top\"><em>&nbsp;$row1[description]</em></td></tr>";


    }
    }
    }
    else
    {
    if (!isset(
    $start) OR $start<0)
    {
    $start = 0;

    $step = 4;

    $query4 = "SELECT * FROM tfn_images WHERE type='a' ORDER BY id DESC LIMIT $start, $step";

    $results4 = mysql_query($query4) or die (mysql_error());

    while(
    $row4 = mysql_fetch_array($results4))
    {
    $width = 150;

    $div = $row4['width'] / $width;
    $nh = $row4['height'] / $div;

    echo
    "<tr><td align=\"center\" width=\"40%\"><a href=\"$row4[image]\"><img src=\"$row4[image]\" width=\"$width\" height=\"$nh\" /></a></td><td style=\"background-color: #ECE9D8;\" valign=\"top\"><em>&nbsp;$row4[description]</em></td></tr>";


    }
    }
    }
    ?>
    </table>

    <table width="90%" border="0" style="padding-top: 100px;" align="center">

    <tr>

    <td width="20%" align="left">

    <?php

    if ($start>0)
    {

    $start_back = $start - $step;

    if(isset(
    $_GET['tid']))
    {
    $tid = $_GET['tid'];

    echo
    "<a href=\"gallery.php?start=$start_back&tid=$tid\">Precedenti</a>";
    }
    else
    {
    echo
    "<a href=\"gallery.php?start=$start_back\">Precedenti</a>";
    }
    }

    ?>

    </td>

    <?php

    $query2
    = "SELECT count(type='a') AS tot FROM tfn_images";

    $results2 = mysql_query($query2, $db);

    $row2 = mysql_fetch_array($results2);

    $pages = intval(($row2['tot']-1) / $step)+1;

    ?>

    <td width="60%" align="right">

    <?php

    for($i=0; $i<$pages AND $i<4; $i++)
    {
    if(isset(
    $_GET['tid']))
    {
    $tid = $_GET['tid'];

    echo
    "<a href=\"gallery.php?start=$pages&tid=$tid\">". ($i+1) ."</a>";
    }
    else
    {
    echo
    "<a href=\"gallery.php?start=$pages\">". ($i+1) ."</a>";
    }
    }

    ?>

    </td>

    <td width="20%" align="left">

    <?php

    if ($start + $step < $row2['tot'])
    {
    $start_next = $start + $step;
    if(isset(
    $_GET['tid']))
    {
    $tid = $_GET['tid'];

    echo
    "<a href=\"gallery.php?start=$start_next&tid=$tid\">Successivi</a>";
    }
    else
    {
    echo
    "<a href=\"gallery.php?start=$start_next\">Successivi</a>";
    }
    }
    ?>

    </td>
    </tr>
    </table>

    <?php



    mysql_close
    ($db);

    ?>
    ciao thx
    Ultima modifica di dementialsite : 26-09-2007 alle ore 09.21.06 Motivo: Metto il tag PHP che evidenzia meglio la sintassi...

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

    Predefinito

    Per prima cosa ti consiglio di proteggere un po' lo script magari con la funzione mysql_escape_string.
    Poi prova ad aggiungere all'inizio dello script:
    Codice PHP:
    <?php
    error_reporting
    (E_ALL);
    ?>
    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

  3. #3
    Guest

    Predefinito

    scusa il codice che mi hai dato non riporta nessun errore...Puoi cortesemente cercarmelo tu per favore? che sto impazzendo...

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

    Predefinito

    Prova a modificare questa riga:
    Codice PHP:
    echo "<tr><td align=\"center\" width=\"40%\"><a href=\"$row1[image]\"><img src=\"$row1[image]\" width=\"$width\" height=\"$nh\" /></a></td><td style=\"background-color: #ECE9D8;\" valign=\"top\"><em>&nbsp;$row1[description]</em></td></tr>";
    In questo modo:
    Codice PHP:
    echo "<tr><td align=\"center\" width=\"40%\"><a href=\"{$row1['image']}\"><img src=\"{$row1['image']}\" width=\"{$width}\" height=\"{$nh}\" /></a></td><td style=\"background-color: #ECE9D8;\" valign=\"top\"><em>&nbsp;{$row1['description']}</em></td></tr>";
    E questa riga:
    Codice PHP:
    echo "<tr><td align=\"center\" width=\"40%\"><a href=\"$row4[image]\"><img src=\"$row4[image]\" width=\"$width\" height=\"$nh\" /></a></td><td style=\"background-color: #ECE9D8;\" valign=\"top\"><em>&nbsp;$row4[description]</em></td></tr>";
    In questo modo:
    Codice PHP:
    echo "<tr><td align=\"center\" width=\"40%\"><a href=\"{$row4['image']}\"><img src=\"{$row4['image']}\" width=\"{$width}\" height=\"$nh\" /></a></td><td style=\"background-color: #ECE9D8;\" valign=\"top\"><em>&nbsp;{$row4['description']}</em></td></tr>";
    Hai provato a eseguire le query per vedere quanti risultati ritornano?
    Scrivi il link di questo script, così vediamo il suo output.
    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

Regole di scrittura

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