Tabeau dynamique en php
tito
-
tito -
tito -
Bonjour,
Voila je voudrai créer un tableau a l'aide de php et afficher dans chaque cellule des informations qui provienne d'une base de données.
Voila mon code :
<table>
<?php
$nb_colone = 6;
$compteur_enregistrement = $total_enregistrement;
while ($row_img){
$img = explode('.', $row_img['url']);
if($total_enregistrement != 0){
if($nb_colone == 6){
echo '<tr>';
$nb_colone = 0;}
if($nb_colone != 6){
if($compteur_enregistrement != 0){
echo '<td><img src="../images/gallerie/'.$img[0].'-mini.'.$img[1].' /></td>';
$compteur_enregistrement = $compteur_enregistrement - 1;}
$nb_colone = $nb_colone + 1;}
if($nb_colone == 6){
echo '</tr>';}
}
}
?>
</table>
le probleme c'est qu'il répéte a l'infini les balises <tr> et </tr> .
Les premieres images s'affiche bien pourtant.
Pouvez vous m'aider ?
Voila je voudrai créer un tableau a l'aide de php et afficher dans chaque cellule des informations qui provienne d'une base de données.
Voila mon code :
<table>
<?php
$nb_colone = 6;
$compteur_enregistrement = $total_enregistrement;
while ($row_img){
$img = explode('.', $row_img['url']);
if($total_enregistrement != 0){
if($nb_colone == 6){
echo '<tr>';
$nb_colone = 0;}
if($nb_colone != 6){
if($compteur_enregistrement != 0){
echo '<td><img src="../images/gallerie/'.$img[0].'-mini.'.$img[1].' /></td>';
$compteur_enregistrement = $compteur_enregistrement - 1;}
$nb_colone = $nb_colone + 1;}
if($nb_colone == 6){
echo '</tr>';}
}
}
?>
</table>
le probleme c'est qu'il répéte a l'infini les balises <tr> et </tr> .
Les premieres images s'affiche bien pourtant.
Pouvez vous m'aider ?
6 réponses
-
bonjour,
ta boucle devrait plutôt ressembler à ça :
while ($row_img=mysql_fetch_assoc($ma_requete)) {
...
} -
Oui enfet au départ je l'avait codé comme ca mais j'avai cette erreur : mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource ...
Je comprend pas -
fais un fichier test.php avec tes infos de base de données et une requête très simple dans cette boucle while et ça doit fonctionner sans problème.
-
Effectivement sa fonctionne trés bien sur le fichier test, mais alor je compren pas pourquoi sa ne fonctionne pas sur ma page !
je remet mon code avec la connexion a la base de données :
<?php
mysql_select_db($database_support, $support);
$query_img = "SELECT * FROM img";
$img = mysql_query($query_img, $support) or die(mysql_error());
$row_img = mysql_fetch_assoc($img);
$totalRows_img = mysql_num_rows($img);
$total_enregistrement = $totalRows_img;
?>
<table>
<?php
$nb_colone = 6;
$compteur_enregistrement = $total_enregistrement;
while ($row_img=mysql_fetch_assoc($img)){
$img = explode('.', $row_img['url']);
if($total_enregistrement != 0){
if($nb_colone == 6){
echo '<tr>';
$nb_colone = 0;}
if($nb_colone != 6){
if($compteur_enregistrement != 0){
echo '<td><img src="../images/gallerie/'.$img[0].'-mini.'.$img[1].' /></td>';
$compteur_enregistrement = $compteur_enregistrement - 1;}
$nb_colone = $nb_colone + 1;}
if($nb_colone == 6){
echo '</tr>';}
}
}
?>
</table>
Il y a t'il une erreur ? -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Je vien de trouver, c'est la fonction explode() qui gene !
Seulement j'en ai besoin =s
J'ai éssayé de la placer a un autre endroit que dans la boucle et c'est pareil ...
Il y a t'il une autre solution ? -
Bonjour,
Bon la seule solution que j'ai trouvé est de modifier la table de la BDD pour éviter le explode(), enregistré l'url de l'image en deux parties.
Maintenant tout fonctionne bien, a l'exception qu'il manque un enregistrement a chaque fois ...
Si il y a 3 entrées dans la table seul 2 seront affichées...
Quelqu'un a une idée d'ou sa peut venir ?
Merci