J'utilise ce qui suit pour saisir mon grand jeu de résultats à partir d'une base de données mysql:Catégoriser un grand résultat mysql avec PHP alors?
$discresult = 'SELECT t.id, t.subject, t.topicimage, t.topictype, c.user_id, c.disc_id FROM topics AS t LEFT JOIN collections AS c ON t.id=c.disc_id WHERE c.user_id='.$user_id;
$userdiscs = $db->query($discresult) or error('Error.', __FILE__, __LINE__, $db->error());
Cette renvoie une liste de tous les éléments que l'utilisateur possède. Je suis donc besoin de classer ces éléments en fonction de la valeur de la colonne, qui Im faisant actuellement en utilisant « topictype »:
<h2>Category 1</h2>
<?php
while ($cur_img = mysql_fetch_array($userdiscs)) {
if ($cur_img['topictype']=="cat-1") {
if ($cur_img['topicimage']!="") {
echo "<div><a href=\"viewtopic.php?id=".$cur_img['id']."\" title=\"".$cur_img['subject']."\"><img src=\"".$cur_img['topicimage']."\" style=\"width:60px; height: 60px\" /></a><br /><a href=\"viewtopic.php?id=".$cur_img['id']."\" title=\"".$cur_img['subject']."\">".$cur_img['subject']."</a></div>";
} else {
echo "<div><a href=\"viewtopic.php?id=".$cur_img['id']."\" title=\"".$cur_img['subject']."\"><img src=\"img/no-disc-art.jpg\" style=\"width:60px; height: 60px\" /></a><br /><a href=\"viewtopic.php?id=".$cur_img['id']."\" title=\"".$cur_img['subject']."\">".$cur_img['subject']."</a></div>";
}
}
}
mysql_data_seek($userdiscs, 0);
?>
<h2>Category 2</h2>
<?php
while ($cur_img = mysql_fetch_array($userdiscs)) {
if ($cur_img['topictype']=="cat-2") {
if ($cur_img['topicimage']!="") {
echo "<div><a href=\"viewtopic.php?id=".$cur_img['id']."\" title=\"".$cur_img['subject']."\"><img src=\"".$cur_img['topicimage']."\" style=\"width:60px; height: 60px\" /></a><br /><a href=\"viewtopic.php?id=".$cur_img['id']."\" title=\"".$cur_img['subject']."\">".$cur_img['subject']."</a></div>";
} else {
echo "<div><a href=\"viewtopic.php?id=".$cur_img['id']."\" title=\"".$cur_img['subject']."\"><img src=\"img/no-disc-art.jpg\" style=\"width:60px; height: 60px\" /></a><br /><a href=\"viewtopic.php?id=".$cur_img['id']."\" title=\"".$cur_img['subject']."\">".$cur_img['subject']."</a></div>";
}
}
}
mysql_data_seek($userdiscs, 0);
?>
Cela fonctionne bien quand je rincer et répéter le code, mais que le site se développe Je pense que je vais rencontrer des problèmes à mesure que le nombre d'options "topictype" augmente (en comptant environ 30 catégories). Je ne veux pas avoir à faire des requêtes séparées pour chaque groupe par catégorie des disques non plus, comme Id éventuellement avoir 30 requêtes en cours d'exécution avec l'augmentation des catégories, donc l'espoir d'entendre quelques suggestions ou approches alternatives :)
Merci
Merci pour l'effort, mais j'ai du mal à faire fonctionner cela. Je ne peux pas écrire correctement le code dans un commentaire alors je m'en tiendrai là et j'essaierai de le comprendre :) – Ryan