ASPN ActiveState Programmer Network
ActiveState
/ Home / Perl / PHP / Python / Tcl / XSLT /
/ Safari / My ASPN /
Cookbooks | Documentation | Mailing Lists | Modules | News Feeds | Products | User Groups


Recent Messages
List Archives
About the List
List Leaders
Subscription Options

View Subscriptions
Help

View by Topic
ActiveState
.NET Framework
Open Source
Perl
PHP
Python
Tcl
Web Services
XML & XSLT

View by Category
Database
General
SOAP
System Administration
Tools
User Interfaces
Web Programming
XML Programming


MyASPN >> Mail Archive >> php-france
php-france
[php-france] [PHP] arrondir un chiffre pour qu'il soit divisible par 4
by Lacaille Charles Philippe other posts by this author
Aug 1 2006 6:13AM messages near this date
[php-france] Redimensionner une image | RE: [php-france] [PHP] arrondir un chiffre pour qu'il soit divisible par 4
Salut les vacanciers

Voilà, n'étant pas vraiment en vacances mais rêvant d'y être je suis en 
train de me réaliser un photoBlog de mes photos (un peu plus de 6000 à 
mettre en ligne).

Mon problème est le suivant :

J'ai un tableau de 4 colonnes par N lignes ou N équivaut à une photo de 
la galerie en cours d'affichage.

Lors de la construction de la table je divise le total des images par 4 
pour obtenir le nombres de lignes à générer sur la table.
Pour mes test cela fonctionne avec 3 Galeries sur les 4 prévu au 
démarrage. L'erreur ne vient pas du code à mon avis (bien qu'il puisse 
être grandement améliorer) mais d'un problème mathématique.

La première galerie à 20 images soit 20/4 = 20
La seconde 6 images soit 6/4 = 1,5
Les 3ème et 4 4ème ont chacune 4 images dont pas de problème.

Donc, mon souhait serait de pouvoir arrondir un chiffre non divisible 
par 4 par un autre pouvant l'être.

Quelqu'un aurait-t-il une idée de comment faire.

Pour aide voici un extrait du source incriminé.

## DEB ########################################
<?
$totalTD=4;
$totalTR=$totalTD/4;
$galerie = array (
"name"      =>  array('','Premiers 
tests','nDLG2004.03.07','nDLG2004.03.08','nDLG2004.03.10','nDLG2004.03.14'),
"path"      =>  
array('','2004.02.18','2004.03.07','2004.03.08','2004.03.10','2004.03.14','2004.03.18','2004
.03.21','2004.03.23'),
"totalImg"  =>  array('','20','6','4','4'),
);

include('./include.html');

if ($id=="")
{
     #include('selectGalerie.inc');
     $zero=0;
     for ($countImg=0;$countImg<=$totalTD;$countImg)
     {
         $TotalDesImages=$galerie[totalImg][$countImg]+$zero;
         $un=$TotalDesImages;
         $zero=$un;
         $countImg++;
     }
     print '<h2> Total des images : '.$TotalDesImages.' pour '.$totalTD.' 
galleries.</h2> ';
     print '<table style="border:1px solid #f84;text-align: left; width: 
100%;" border="0" cellpadding="0" cellspacing="4"> '; {
         for ($tr=1;$tr<=$totalTR;$tr++) // Construction des tags <TR> 
         {
             print "<tr> ";
             for ($th=$totalTD;$th<=$totalTD;$th++) // Construction des 
tags <TD> 
             {
                 for ($td=1;$td<=4;$td++) // Construction des cellules 
d'affichage
                 {
                     $count++;
                     print '<td style="text-align: center;"> <hr /><strong>';
                     {
                         print $galerie[name][$count].'</strong> <br />';
                         print '<a href="?id='.$count.'"> ';
                         print '<img 
src="'.$galerie[path][$count].'/th'.rand(100,((100+$galerie[totalImg][$count])-1)).'.jpg.jpg
" 
alt="" style="width:100px;height:75px" /> </a><br />';
                         print 'Nombre d\'image : 
<em> '.$galerie[totalImg][$count].'</em>';
                         print '<hr /> </td>';
                     }}}
                     print "</tr> ";
         }} print '</table> ';
}
else
{
     print '<h2> Total des images de la gallerie : 
'.$galerie[totalImg][$id].'.</h2> ';
     ##  DEB> 001 
###############################################################
     $count   = 100;
     print '<table border="1" cellpadding="0" cellspacing="0" 
style="width:100%"> ';
     #for ($tr=1;$tr<=$totalTR;$tr++) // Code non-modofié
     for ($tr=1;$tr<=($galerie[totalImg][$id]/4);$tr++)
     {
         print '<tr style="text-align:center"> ';
         #for ($td=1;$td<=$totalTD;$td++) // Code non-modofié
         for ($td=1;$td<=$totalTD;$td++)
         {
             print '<td> ';
             {
                 ## DEB> 002 ############################################
                 print '<br /> <a 
href="'.$galerie[path][$id].'/'.$count.'.jpg.jpg"> ';
                 print '<img 
src="'.$galerie[path][$id].'/th'.$count++.'.jpg.jpg" alt="" /> </a><br 
/> <br />';
                 ## END> 002 ############################################
             }
             print '</td> ';
         }
         print '</tr> ';
     }
     print  "</table> ";
     ##  DEB> 002 
###############################################################
     print '</td> ';
     print '</tr> ';
     print '</table> ';
     print '</body> ';
     print '</html> ';
} ?> 
## END ########################################

Cordialement
-- 
     ("`-''-/").___..--''"`-._
      `6_ 6  )   `-.  (     ).`-.__.`)
      (_Y_.)'  ._   )  `._ `. ``-..-'
       `--'_..-_/  /--'_.' ,'
(ll).-''  (((!.'  ((!.-'
LACAILLE Charles-Philippe
charlies@[...].com
-----------------------------------------------------------------------

-- 
Se désabonner ? Envoyez un mail à php-france-unsubscribe@[...].org
Plus d'informations ? Envoyez un mail à sympa@[...].org ayant pour sujet HELP
Thread:
Lacaille Charles Philippe
Jean-Baptiste MASSUELLES
Lacaille Charles Philippe

Privacy Policy | Email Opt-out | Feedback | Syndication
© 2004 ActiveState, a division of Sophos All rights reserved