Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    239

    [PHP] Impaginare immagini [lungo]

    Ciao,
    ho un problema con l'impaginazione delle immagini.

    Ho bisogno di impaginare 2 tipi di immagini
    1.orizzontale 500x250
    2.verticale 250*510

    In modo che siano "incastrate" le une con le altre..

    Mi spiego meglio, se io prendo le immagini in sequenza dal DB, potrò avere un'immagine verticale seguita da una orizzontale e poi da un'altra verticale.
    Quando andrò a stampare le celle, quella dell'immagine orizzontale sarà mezza vuota, io vorrei fosse riempita con un'altra immagine orizzontale.

    Questo è solo uno dei casi, purtoppo.

    La soluzione che avevo pensato era utilizzare 1 tipo di cella normale per le immagini orizzontali ed uno con rowspan=2 per quelle verticali, ma non funziona.

    Vi posto il codice scritto al volo che ho prodotto....




    codice:
    function impag_nz($work_id)
    {
    
    $sql=new sql;
    $sql->_select_db();
    $count=$sql->_query("select count(work_img) from work_imgs where work_id='$work_id'") or die (mysql_error());
    $tt=$sql->_fetch_array($count);
    $tot=$tt['0'];
    //print "$tot\n";
    $per_riga=3;
    $saltare=0;
    $offset=0;
    $temp='';
    $riga='';
    $cont=0;
    $esci='';
    $passa='';
    $stampati=0;
    $limit=0;
    $tab_start='<table width="60%" border="0" cellspacing="1" cellpadding="3">';
    while ($tot-$offset>0)
    {
    $resto=$tot-$offset;
    
    
    $limit=$per_riga-$saltare;
    $saltare=0;
    if ($resto<$limit)
    {
    $limit=$resto;
    }else{
    $limit=$limit;
    }
    //print "per riga= $limit\n";
    
    
    $query_txt="select filen,nome from work_imgs where work_id=$work_id LIMIT $offset,$limit ";
    
    
    //print "$query_txt\n";
    $query=$sql->_query($query_txt) or die (mysql_error());
    
    		while($dati=$sql->_fetch_array($query))
    		{
    		$filename=$dati['filen'];
    		list($src_width,$src_height, $src_type, $src_attr) = getimagesize('./imgs/'.$filename);
    		
    		
    			if ($src_height>250)
    			{
    				//if ($cont==1)
    				//{
    				//$temp=implode("",file('./_modules/works/img.tpl'));
    				//$echo=str_replace('--filen--',$dati[0],$temp);
    				//$pippo=str_replace('--nome--',$dati[1],$echo);
    				//$saltare=$saltare+1;	
    				//$cont=$cont+1;
    				//}else{
    				$temp=implode("",file('./_modules/works/img2.tpl'));
    				$echo=str_replace('--filen--',$dati[0],$temp);
    				$pippo=str_replace('--nome--',$dati[1],$echo);
    				//print "lunga\n";
    				$saltare=$saltare+1;
    				$cont=$cont+1;
    				//}
    			}else{
    			$temp=implode("",file('./_modules/works/img.tpl'));
    			$echo=str_replace('--filen--',$dati[0],$temp);
    			$pippo=str_replace('--nome--',$dati[1],$echo);
    			$saltare=$saltare;
    			$cont=$cont+1;
    			}
    			
    			
    			
    			
    			$cont=1;
    		  $passa=$passa.$pippo;
    		  $offset=$offset+1;
    		  $stampati=$stampati+1;		 
    		}	
    		 //print "stampati: $stampati\n";
    		$riga='<tr>'.$passa.'</tr>';
    		$passa='';
    		$esci=$esci.$riga;
    		$riga='';
    		
    }
    $echos=$tab_start.$esci.'</table>';
    return $echos;
    }

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    239
    up

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    239
    uppete

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    239
    uppino ultimo

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 © 2024 vBulletin Solutions, Inc. All rights reserved.