[php/mysql] Eviter de faire 20 requêtes pour un affichage

nicowizz

Nouveau WRInaute
Bonjour,

Je dois développez sur une page, un affichage de stock que je dois ensuite disposer par catégories dans différents blocs (CSS).

Je peux le réaliser très simplement en faisait 20 requêtes mysql dans la page où se trouve les différents blocs (j'ai 20 catégories différentes).

Je me suis dit que cela serait stupide et qu'en une seule requête je pourrais m'en sortir. J'ai donc essayé de tout stocker dans un tableau et de trier les résultats (avec l'aide d'un admin ici). Mais maintenant à par faire 20 conditions IF pour chaque bloc et afficher, je reviens un peu à la même conclusion.

C'est une BDD avec environ 30000 lignes, la requête va uniquement chercher maximum 60 lignes avec le where. Et j'ai juste 4/5 colonnes à récupérer.
Faire 20 requêtes pourrait le faire, mais auriez-vous une idée plus pro ?

Merci d'avance à vous
 

loubet

WRInaute impliqué
mieux vaux 20 if que 20 requetes.
après il faudrait plus de détail pour savoir s'il y a vraiment besoin de faire 20 if.
 

nicowizz

Nouveau WRInaute
loubet a dit:
mieux vaux 20 if que 20 requetes.
après il faudrait plus de détail pour savoir s'il y a vraiment besoin de faire 20 if.

Merci, en fait tout serait dans un tableau et je serais obligé de faire à chaque catégories à afficher dans des DIV différentes, if ($tableau['categorie']=="exemple") echo " ..."

if ($tableau['categorie']=="exemple2") echo " ..."
 

HawkEye

WRInaute accro
Pourquoi ne pas générer un tableau de tableaux ?

Un truc du genre...

foreach() ou while() {
$tables[$categorie][] .= $ligne;
}

(pas forcément correct, mais tu devrais pouvoir te dépatouiller)...
 

Discussions similaires

Haut