Array, do, while, break, ou continue ?
Résolu/Fermé
cheese42
Messages postés
860
Date d'inscription
mardi 11 septembre 2007
Statut
Membre
Dernière intervention
10 octobre 2018
-
24 févr. 2012 à 09:55
Mihawk Messages postés 4313 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 - 24 févr. 2012 à 15:41
Mihawk Messages postés 4313 Date d'inscription mercredi 29 mars 2006 Statut Contributeur Dernière intervention 6 janvier 2015 - 24 févr. 2012 à 15:41
A voir également:
- Array, do, while, break, ou continue ?
- Xwxwxwxwv songs do 2023 - Forum Jeux vidéo
- Prison break torrent magnet - Forum Cinéma / Télé
- Problème avec Youtube Song Downloader ✓ - Forum Audio
- Sad song - Forum Musique / Radio / Clip
- Prison break saison 4 version francaise ✓ - Forum Cinéma / Télé
4 réponses
Mihawk
Messages postés
4313
Date d'inscription
mercredi 29 mars 2006
Statut
Contributeur
Dernière intervention
6 janvier 2015
845
24 févr. 2012 à 14:20
24 févr. 2012 à 14:20
Et moi je ferai ça :
Comme ça en plus tu peux changer le nombre de résultats à mettre par ligne :)
Je n'ai pas testé y aura p'tete un ou deux effets de bords :P
$nbResultsPerLine = 2; $currentResultIndex = 1; $nbOfResults = count(mysql_fetch_array($premsql)); echo('<table><tr>'); while($donnee = mysql_fetch_array($premsql)){ if($currentResultIndex%$nbResultsPerLine != 0){ echo('<td>'.$donnee['madonnees'].'</td>'); }else{ echo('<td>'.$donnee['madonnees'].'</td></tr>'); if($currentResultIndex < $nbOfResults) echo('<tr>'); } $currentResultIndex++; }
Comme ça en plus tu peux changer le nombre de résultats à mettre par ligne :)
Je n'ai pas testé y aura p'tete un ou deux effets de bords :P
Mihawk
Messages postés
4313
Date d'inscription
mercredi 29 mars 2006
Statut
Contributeur
Dernière intervention
6 janvier 2015
845
Modifié par Mihawk le 24/02/2012 à 11:41
Modifié par Mihawk le 24/02/2012 à 11:41
Hello,
Pour info ta requête est un peu lourde. Tu as fait une zone "catégorie" et une zone "première lettre de la catégorie" ? C'est dommage !
Est équivalent à :
Les expressions régulières sont un outil incontournable quelque soit le language
Mihawk
"La rigoureusité fait la qualité"
Pour info ta requête est un peu lourde. Tu as fait une zone "catégorie" et une zone "première lettre de la catégorie" ? C'est dommage !
select * from categoriedescodes WHERE premierelettre = 'A' OR premierelettre = 'B' OR premierelettre = 'C' OR premierelettre = 'D' OR premierelettre = 'E' ORDER BY nomdelacatego
Est équivalent à :
select * from categoriedescodes WHERE nomdelacatego regexp "^[ABCDE]" ORDER BY nomdelacatego
Les expressions régulières sont un outil incontournable quelque soit le language
Mihawk
"La rigoureusité fait la qualité"
cheese42
Messages postés
860
Date d'inscription
mardi 11 septembre 2007
Statut
Membre
Dernière intervention
10 octobre 2018
120
24 févr. 2012 à 12:45
24 févr. 2012 à 12:45
merci Mihawk, je vais utiliser ceci, merci, mais, pour assassintourist,
oui cette requete est actuellement sur un site, donc
oui il serait preferable de mettre sur 2 colonnes car la pour le moment
ca fait une longue page et cela couperait en 2,
merci....
oui cette requete est actuellement sur un site, donc
oui il serait preferable de mettre sur 2 colonnes car la pour le moment
ca fait une longue page et cela couperait en 2,
merci....
cheese42
Messages postés
860
Date d'inscription
mardi 11 septembre 2007
Statut
Membre
Dernière intervention
10 octobre 2018
120
24 févr. 2012 à 12:54
24 févr. 2012 à 12:54
voila mihawk, les requetes de la page sont changées,merci
mais la colonne est toujours sur une seul horizontale ;).....
mais la colonne est toujours sur une seul horizontale ;).....
Mihawk
Messages postés
4313
Date d'inscription
mercredi 29 mars 2006
Statut
Contributeur
Dernière intervention
6 janvier 2015
845
24 févr. 2012 à 14:01
24 févr. 2012 à 14:01
Et la requête fonctionne toujours ?
cheese42
Messages postés
860
Date d'inscription
mardi 11 septembre 2007
Statut
Membre
Dernière intervention
10 octobre 2018
120
24 févr. 2012 à 14:10
24 févr. 2012 à 14:10
oui mihawk, toutes les requetes passent niquel,
de A a Z et de 0 à 9, c tout bon, c juste que cela s'affiche env ertcial mais que sur 1 seule colonne ;) merci...
de A a Z et de 0 à 9, c tout bon, c juste que cela s'affiche env ertcial mais que sur 1 seule colonne ;) merci...
AssassinTourist
Messages postés
5709
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 310
24 févr. 2012 à 10:35
24 févr. 2012 à 10:35
Bonjour,
Pourquoi for ne te convient pas ? Le rendu est le même que tes lignes en gras :$
Pourquoi for ne te convient pas ? Le rendu est le même que tes lignes en gras :$
cheese42
Messages postés
860
Date d'inscription
mardi 11 septembre 2007
Statut
Membre
Dernière intervention
10 octobre 2018
120
24 févr. 2012 à 11:35
24 févr. 2012 à 11:35
bjr,
si je met "for",
cela fera
resul1- resul1
resul2-resul2
etcetc
alors que moi il faudrait,
result1 -result2
result3 - resul4
ma boucle doit avoir un souci ===>
$premsql = mysql_query("select * from categoriedescodes WHERE premierelettre = 'A' OR premierelettre = 'B' OR premierelettre = 'C' OR premierelettre = 'D' OR premierelettre = 'E' ORDER BY nomdelacatego");
$nb1='0';
while ($doone = mysql_fetch_array($premsql) )
{
$nb1++;
?>
<tr align="center">
<?php
//for( $i = 0; $i < 2; $i++ )
//{
?>mes td ici
<?php
// continue;
// echo ''; // cette instruction ne sera jamais exécutée
//}
?>
</tr>
<?php
}
?>
</table>
si je met "for",
cela fera
resul1- resul1
resul2-resul2
etcetc
alors que moi il faudrait,
result1 -result2
result3 - resul4
ma boucle doit avoir un souci ===>
$premsql = mysql_query("select * from categoriedescodes WHERE premierelettre = 'A' OR premierelettre = 'B' OR premierelettre = 'C' OR premierelettre = 'D' OR premierelettre = 'E' ORDER BY nomdelacatego");
$nb1='0';
while ($doone = mysql_fetch_array($premsql) )
{
$nb1++;
?>
<tr align="center">
<?php
//for( $i = 0; $i < 2; $i++ )
//{
?>mes td ici
<?php
// continue;
// echo ''; // cette instruction ne sera jamais exécutée
//}
?>
</tr>
<?php
}
?>
</table>
AssassinTourist
Messages postés
5709
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 310
24 févr. 2012 à 11:40
24 févr. 2012 à 11:40
Ah oui, je vois (pardon XD)
Et je vois le problème. Je voudrais alors savoir si tu comptes mettre réellement deux colonnes ou si c'est juste un exemple ?
Et je vois le problème. Je voudrais alors savoir si tu comptes mettre réellement deux colonnes ou si c'est juste un exemple ?
AssassinTourist
Messages postés
5709
Date d'inscription
lundi 16 janvier 2012
Statut
Contributeur
Dernière intervention
29 février 2024
1 310
24 févr. 2012 à 13:51
24 févr. 2012 à 13:51
Bon alors moi, je ferais quelque chose comme ceci :
$fin_ligne = false; while(){ if(!$fin_ligne){ <tr><td>result</td> $fin_ligne = true; }else{ <td>result</td></tr> $fin_ligne = false; } }
24 févr. 2012 à 15:09
24 févr. 2012 à 15:22
24 févr. 2012 à 15:25
24 févr. 2012 à 15:37
super, merci à vous 2, je poste mon code si cela peut servir un jour à quelqu'un !!!!!
======================
<table align="center" width="600" border="2" bgcolor="#FFFFCC">
<tr align="center">
<td><br />
<table>
<?php
$uuuuuuuuuuu = mysql_query('SELECT COUNT(*) AS nomdelacatego from categoriedescodes WHERE nomdelacatego regexp "^[ABCDE]" ORDER BY nomdelacatego');
$doggggg = mysql_fetch_array($uuuuuuuuuuu);
$totaldecmbres = $doggggg['nomdelacatego'];
$nombredecolonnespremcatego = $totaldecmbres;
$premsql = mysql_query('select * from categoriedescodes WHERE nomdelacatego regexp "^[ABCDE]" ORDER BY nomdelacatego');
$nbResultsPerLine = 2;
$currentResultIndex = 1;
$nbOfResults = count(mysql_fetch_array($premsql));
echo('<tr>');
while($doone = mysql_fetch_array($premsql)){
if($currentResultIndex%$nbResultsPerLine != 0){
?>
<td align="center">
<table width="250" border="0" bgcolor="#FFCCFF">
<tr>
<td width="100" align="center"><a href="codesenvente.php?ask=<?php echo $doone['nomdelacatego']; ?>" style="color:#000000;"><img src="<?php echo $doone['imgcodesite']; ?>" alt="<?php echo $doone['nomdelacatego']; ?>" border="0" width="90" height="90" /></a></td>
<td width="100" align="center"><a href="codesenvente.php?ask=<?php echo $doone['nomdelacatego']; ?>" style="color:#000000;"><?php echo $doone['nomdelacatego']; ?></a></td>
<td width="50" align="center"><b><font color="#000000">(<?php echo $doone['numberdecetype']; ?>)</font></b></td>
</tr>
</table>
<br /><br />
</td>
<?php
}else{
?>
<td align="center">
<table width="250" border="0" bgcolor="#FFCCFF">
<tr>
<td width="100" align="center"><a href="codesenvente.php?ask=<?php echo $doone['nomdelacatego']; ?>" style="color:#000000;"><img src="<?php echo $doone['imgcodesite']; ?>" alt="<?php echo $doone['nomdelacatego']; ?>" border="0" width="90" height="90" /></a></td>
<td width="100" align="center"><a href="codesenvente.php?ask=<?php echo $doone['nomdelacatego']; ?>" style="color:#000000;"><?php echo $doone['nomdelacatego']; ?></a></td>
<td width="50" align="center"><b><font color="#000000">(<?php echo $doone['numberdecetype']; ?>)</font></b></td>
</tr>
</table>
<br /><br />
</td></tr>
<?php
if($currentResultIndex < $nbOfResults) echo('<tr>');
}
$currentResultIndex++;
}
echo('</tr>');
?>
</table>
</td>
</tr>
</table>
<br />
24 févr. 2012 à 15:41