Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    555

    Scelta paginazione risultati con o senza il campo immagine

    Salve ragazzi.
    Il problema è questo. Ho una script che mi pagina i risultati ottenuti. Posto il codice php per capirci:

    Codice PHP:
    <?php 
    include("config.php");
    mysql_connect($db_host,$db_user,$db_password,$db_name) or die ("errore nella connessione"); 
    mysql_select_db("$db_name") or die ("errore nella selezione del database"); 

    // esecuzione prima query
    $count mysql_query("SELECT COUNT(art_id) FROM articoli");
    $res_count mysql_fetch_row($count);

    // numero totale di records
    $tot_records $res_count[0];

    // risultati per pagina(secondo parametro di LIMIT)
    $per_page 6;

    // numero totale di pagine
    $tot_pages ceil($tot_records $per_page);

    // pagina corrente
    $current_page = !isset($_GET['page']) ? : (int)$_GET['page'];

    // primo parametro di LIMIT
    $primo = ($current_page 1) * $per_page;
    echo 
    "<div align=\"center\">\n<table>\n";


    // esecuzione seconda query con LIMIT
    $query_limit mysql_query("SELECT * FROM articoli Order by art_id Desc LIMIT $primo$per_page"); 
    while(
    $results mysql_fetch_array($query_limit)) {
    echo 
    '<div class=\'textimage\'> ';
    echo 
    '<div class=\'image\'>'
    echo 
    '[url="page.php?id='.$results['art_id'].'"]<img src=\"show.php?id='.$results['art_id'].'\" alt=\'immagine anteprima articolo 14076\' width=\'100\' height=\'91\' title=\'immagine articolo 14076\' />[/url]';
    echo 
    '</div>';
    echo 
    '</div>';
    echo 
    '<div class=\'testoterzoartic\'>'
    echo 
    '<p class=\'titoloterzoartic\'>';
    echo 
    '[url="page.php?id='.$results['art_id'].'"]'.$results['titolo'].'[/url]</p>';
    echo 
    '<p class=\'antetestoterzoartic\'>'.$results['sottotitolo'].'</p>';
    echo 
    '<p class=\'pubblicatoil\'>'.$results['data'].'</p>';
    echo 
    '</div>';

    }
     
    // includiamo uno dei files contenenti la paginazione, commentate l'altro ovviamente
    include("paginazione_2.php");
    //include("paginazione_1.php");

    // in questa cella inseriamo la paginazione

    echo " <tr>\n <td height=\"50\" valign=\"bottom\" align=\"center\">$paginazione</td>\n";

    echo 
    " </tr>\n</table>\n</div>";

    mysql_close(); 
    ?>
    Come potete vedere si tratta di impaginare dei campi relativi a degli articoli inseriti all'interno di un database. Ogni articolo ha una sua immagine associata. Con questo script mi viene estratta anche l'immagine appunto. Ora vi chiedo. Quando vado ad inserire l'articolo ho la possibilità di inserire oppure no l'immagine. Come posso fare affinchè in questa parte di codice venga resa possibile tale possibilità? Ossia, se vado a stampare i risultati di un articolo senza immagine mi viene un errore perchè giustamente non viene identificata la variabile associata all'immagine.
    Vorrei inserire una sorta di ciclo IF-ELSE. Cosa mi suggerite? (Spero di essermi spiegato)
    Grazie mille

  2. #2
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478
    potresti verificare se il campo contenente il path dell'immagine risulta vuoto o meno all'atto dell'estrazione dei dati. Basta aggiungere il controllo all'interno del ciclo while.

    Codice PHP:
    echo empty($results['img_art']) ? '' '<img src=...'
    ovvio che in corrispondenza di '<img src=...' stamperai quello che ti serve.

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    555
    In poche parole in questo modo:

    Codice PHP:
    echo '<a href="page.php?id='.$results['art_id'].'"><empty($results['img_art']) ? '' : 'img src=\"show.php?id='.$results['art_id'].'\" 
    Giusto?

  4. #4
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478
    No, il controllo inizia con empty, quindi questa dev'essere la prima istruzione. Se il campo dove hai il path dell'immagine è vuoto non visualizzi nulla, altrimenti stampi il link e l'immagine. Nell'esempio che ti ho fatto prima ho indicato il nome del campo del path con 'img_art' ma è ovvio che devi mettere quello che utilizzi tu. Usa direttamente il codice che ho postato prima, prova...

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    555
    Ok,
    ho provato e funziona. Ho però un problema. Se leggi il codice che ho postato all'inizio ti renderai conto che l'immagine è inserita all'interno di due Div: prima textimage, poi image.
    Ora, se non inserisco la foto mi rimane un bello spazio vuoto, ossia il testo dell'articolo viene inserito al di fianco e poi al di sotto di tale spazio vuoto (quello che spetterebbe praticamente all'immagine).
    Potrei escludere questi due div? Ossia, fare in modo, tramite php, che questi Div, se non c'è imagine, vengano evitati?

  6. #6
    Utente di HTML.it L'avatar di neida
    Registrato dal
    Feb 2005
    Messaggi
    1,478
    si, il discorso è identico anche per i div. basta includerli nel controllo che fai sul campo col path, e anzichè stampare solo il link e l'immagine, qualora l'immagine fosse presente, includi anche i due div.

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.