par
yaug » 03 nov. 2008, 08:50
En fait, ce n'est pas la requête en elle même que tu dois impacter mais uniquement son traitement.
Typiquement, on peut faire comme ceci :
<?php
$nb_par_ligne = 10;
$str = '<table>';
$info2 = array(
array('item_id' => '1'),
array('item_id' => '2'),
array('item_id' => '3'),
array('item_id' => '4'),
array('item_id' => '5'),
array('item_id' => '6'),
array('item_id' => '7'),
array('item_id' => '8'),
array('item_id' => '9'),
array('item_id' => '10'),
array('item_id' => '11'),
array('item_id' => '12')
);
$cpt = 1;
//On construit ton tableau
foreach($info2 as $data){
if($cpt % $nb_par_ligne == 1) $str .= '<tr>';
$str .= '<td><img src="images/items/'.$info['item_id'].'.gif"></td> ';
if($cpt % $nb_par_ligne == 0) $str .= '</tr>';
$cpt++;
}
//On le complète si une ligne à moins de 10 éléments
$colspan = $nb_par_ligne - ($cpt - 1)%$nb_par_ligne ;
if($colspan > 0 && $colspan != 10) $str.= '<td colspan='.$colspan.'> </td>';
$str .= '</table>';
echo $str;
?>
En fait, ce n'est pas la requête en elle même que tu dois impacter mais uniquement son traitement.
Typiquement, on peut faire comme ceci :
[php]
<?php
$nb_par_ligne = 10;
$str = '<table>';
$info2 = array(
array('item_id' => '1'),
array('item_id' => '2'),
array('item_id' => '3'),
array('item_id' => '4'),
array('item_id' => '5'),
array('item_id' => '6'),
array('item_id' => '7'),
array('item_id' => '8'),
array('item_id' => '9'),
array('item_id' => '10'),
array('item_id' => '11'),
array('item_id' => '12')
);
$cpt = 1;
//On construit ton tableau
foreach($info2 as $data){
if($cpt % $nb_par_ligne == 1) $str .= '<tr>';
$str .= '<td><img src="images/items/'.$info['item_id'].'.gif"></td> ';
if($cpt % $nb_par_ligne == 0) $str .= '</tr>';
$cpt++;
}
//On le complète si une ligne à moins de 10 éléments
$colspan = $nb_par_ligne - ($cpt - 1)%$nb_par_ligne ;
if($colspan > 0 && $colspan != 10) $str.= '<td colspan='.$colspan.'> </td>';
$str .= '</table>';
echo $str;
?>
[/php]