PHP => table => Passer à la ligne

Nunuxnewby Messages postés 435 Date d'inscription   Statut Contributeur Dernière intervention   -  
Nunuxnewby Messages postés 435 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
Un p'tit coup de main pour PHP serait le bienvenu.

J'ai une base de donnée contenant par exemple des chemins vers les images...
Admettons que j'ai 100 images que je veuilles mettre dans une table avec 5 images par ligne...
Comment je peux dire de passer à la ligne chaque 5 images jusqu'à la fin...

J'ai chercher sur le WEB, mais étant débutant, j'ai un peu de mal à trouver l'information juste ou les mots clés qui me permettraient de trouver des explications correspondant à ce que je veux faire...

Voici un exemple de code que j'utilise, mais là il n'y a qu'une seule image par ligne...


<table>

<?php
include ("common_files/mysql_connect.php");
$sql = mysql_query("SELECT * FROM image");
while($affichage = mysql_fetch_array($sql, MYSQL_ASSOC)){
echo '<tr><td><img src="',$affichage['image'],'"/></td></tr>';}
?>

</table>



Merci d'avance pour vos explications ou liens
A voir également:

4 réponses

Alain42
 
Bonjour,

Qqs modifs sur le script de Nem3sis:

<html>
<table>
<?php
$nb_col=5; // modifiable
include ("common_files/mysql_connect.php");
$sql = mysql_query("SELECT * FROM image");
$nb_images=mysql_num_rows($sql);
for ($i=1; $affichage = mysql_fetch_array($sql, MYSQL_ASSOC); $i++) {

	if (($i-1) % $nb_col == 0) echo '<tr>';
	echo '<td><img src="',$affichage['image'],'"/></td>';
	if ($i % $nb_col == 0) echo '</tr>';
}
//generation cellules vides en dernière ligne a remplir avec des espaces pour avoir le même nombre que les lignes au dessus
$nb_vides=$nb_col - ($nb_images % $nb_col);
for($j=1;$j<=$nb_vides;$j++){
	echo "<td>&nbsp;</td>";
	if ($j == $nb_vides) echo '</tr>';
}
?>
</table>
</html>

presque le même mais avec une meilleure gestion des <tr></tr>

1
nEm3sis Messages postés 710 Date d'inscription   Statut Membre Dernière intervention   113
 
j'ai pas testé mais je pense que ceci devrai fonctionner

<table>
<tr>

<?php
include ("common_files/mysql_connect.php");
$sql = mysql_query("SELECT * FROM image");
for ($i=1; $affichage = mysql_fetch_array($sql, MYSQL_ASSOC); $i++) {
	if ($i % 5 == 0) echo '</tr><tr>';
	echo '<td><img src="',$affichage['image'],'"/></td>';
}
?>
</tr>
</table> 
0
Nunuxnewby Messages postés 435 Date d'inscription   Statut Contributeur Dernière intervention   124
 
Je ne peux pas tester ça dans l'immédiat, mais je te remercie de ta réponse!
0
Nunuxnewby Messages postés 435 Date d'inscription   Statut Contributeur Dernière intervention   124
 
Merc beaucoupi, je vais appliquer ça d'ici peu...
D'après la lecture, l'avantage est un nombre de colonnes définissable facilement via une variable et que le tableau soit complété par des cellules vides si besoin!
je vous tiens au courant du déroulement dès que j'ai eu le temps de faire tout ça!
0