Afficher résultat sur 2 colonnes

Fermé
Trash - 19 juin 2014 à 14:12
 Trash - 23 juin 2014 à 09:54
Bonjour la communauté !

Je galère au plus au point à trouver sur la toile le moyen d'afficher le résultat d'une requête PDO sur 2 colonnes d'un tableau.

Voici la fonction qui me récupère un id, un nom et une url .
Le modèle :
<?php 
function AfficherImage($page)
{
global $connexion;
$requete_prepare=$connexion->prepare("SELECT id_image, nom_page, url_image FROM images WHERE nom_page= :page "); // on prépare notre requête
$requete_prepare->bindParam(':page', $page);
$requete_prepare->execute();
$lignes = $requete_prepare->fetchAll();
return $lignes;
}

Le contrôleur :
<?php

include_once('modele/afficherimage.php');
$lignes = AfficherImage('accueil');

// On affiche la page (vue)
include_once('vue/accueil.php');

et j'affiche le résultat comme ceci :

La vue:
<table>
<?php
foreach($lignes as $ligne)
{
$id_image =$ligne['id_image'];
?>
<tr>
<td>
<img alt="<?php echo $id_image ?>" src="<?php echo $ligne['url_image']; ?>" width="200px"></td>
<td><a href="#">
<img id="<?php echo $id_image ?>" alt="" onclick="ConfirmSupprImage(this.id)" src="vue/images/Trash.png"></a></td>
</tr>
<?php
}
?>
</table>
Pour un gain de place sur ma page, je souhaiterai avoir le résultat sur 2 colonnes, exemple :

ce que j'obtiens :
1
2
3
4
5

ce que je veux :
1 4
2 5
3
ou
1 2
3 4
5

peut importe ;)

Merci à la personne qui me sortira de ce bourbier :)

2 réponses

zermat Messages postés 160 Date d'inscription jeudi 19 juin 2014 Statut Membre Dernière intervention 3 juin 2016 16
19 juin 2014 à 15:38
Il suffit d'ajouter un compteur


<table>
<?php
$counter = 0;
foreach($lignes as $ligne)
{
$id_image =$ligne['id_image'];
if($counter == 0) echo '<tr>';
?>

<td>
<img alt="<?php echo $id_image ?>" src="<?php echo $ligne['url_image']; ?>" width="200px"></td>
<td><a href="#">
<img id="<?php echo $id_image ?>" alt="" onclick="ConfirmSupprImage(this.id)" src="vue/images/Trash.png"></a></td>

<?php
$counter++;
if($counter == 2)
{
echo '</tr>';
$counter = 0;
}
}
?>
</table>
1
Merci c'est parfait !
0