Problème dans mon code

cs_framic Messages postés 16 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 15 octobre 2006 - 25 oct. 2005 à 13:22
monoceros01 Messages postés 420 Date d'inscription vendredi 28 novembre 2003 Statut Membre Dernière intervention 20 mars 2006 - 26 oct. 2005 à 00:01
Bonjour,



J'ai créé un code qui permet d'afficher des images a raison de 3 images par ligne puis ensuite on saute une ligne.......



mais ca fonctionne pas j'aimerais savoir pourkoi merci.



Le code :



$compteur= 0;



$nbboucle=($totalDesImages/3);

do

{

$compteur++;

?>

<?

do

{

$donnees = mysql_fetch_array($reponse);

if ($reponse==0)

{

$stop=1;

}

else

{

$compteurligne++;

?>

"> |

<?

}

}

while ((!$compteur ==3) or (!stop==1));

?>

</td>


<?

}

while(!($compteur>=$nbboucle));

5 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
25 oct. 2005 à 13:55
Hello,

tu devrais utiliser plutôt un modulo 3.

Ensuite, plusideurs problèmes :

tu éris stop au lieu de $stop, dans ta condition finale.
Tu ne boucles pas sur ta requête.
Tu ouvres un <tr>, un <th>, tu les fermes, mais je ne vois pas de <td> ouvert alors que tu en fermes un.

D'où vient $reponse ?

Bref, tu peux faire beaucoup plus simple...et bcp mieux codé :-)
0
cs_framic Messages postés 16 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 15 octobre 2006
25 oct. 2005 à 14:22
ouai je sais que je peut faire bcp plus simple mais c'est la solution
la plus simple que j'ai essayé de faire : pour les petit probleme oui
c'est vrai j'ai oublier de faire la modification lorsque j'ai posté le
message et $reponse vien de la selection de la requete mysql.



Voila si tu pouvais m'aider modulo? je sais pas trop comment ca marche etc...



Merci
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
25 oct. 2005 à 14:35
Un modulo, c'est le reste d'une division.

L'opérateur modulo en php est : %



Ex :



1%2 = 1

2%2 = 0
0
monoceros01 Messages postés 420 Date d'inscription vendredi 28 novembre 2003 Statut Membre Dernière intervention 20 mars 2006
25 oct. 2005 à 23:32
<?php

$npl = 3 ; //nombre d'image par ligne



$query = "SELECT url_images FROM table_image [WHERE
ma_clause_where_si_y_en_faut_une] [ORDER BY champ_quelconque] [ASC |
DESC]"; // à modifier selon ta convenance.



/*

[] = facultatif

| = ou

//*/



$result = mysql_query($result, $con_id); //$con_id renvoyé par mysql_connect()

$i=0;

while($data = mysql_fetch_array($result))

// Boucle d'affichage

{

$i++;

$tableau.($i%$npl 1) ? "<tr>" : "";

$tableau.= "<td
align="center"></td>";

$tableau.($i%$npl 0) ? "</tr>" : "";



}

while($i%$npl !=== 0)

// Boucle qui rajoute les cellules manquantes à la fin de la ligne

{

$i++;

$tableau.="<td>&nbsp;</td>";

$tableau.($i%$npl 0) ? "</tr>" : "";

}



$tableau = "".$tableau."
";

?>



Facile hein :p

(je ne suis pas sûr de mon coup, mais je crois que c'est bon.... La question est : "Est-ce optimal ?")
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
monoceros01 Messages postés 420 Date d'inscription vendredi 28 novembre 2003 Statut Membre Dernière intervention 20 mars 2006
26 oct. 2005 à 00:01
Oups! j'ai oublier de déclarer la variable $tableau avant de a concaténer ^_^;;;



Donc il faut rajouter :

$tableau = "";

n'importe où avant la première boucle :)
0
Rejoignez-nous