MySQL : sélection multi-consoles pour un programme de news

MySQL : sélection multi-consoles pour un programme de news - PHP - Programmation

Marsh Posté le 16-02-2003 à 20:48:49    

Pour mon site, j'ai fait un programme de news en MySQL et j'ai créé un champ pour indiquer la console concernée par la news (ex : PS2, PC, Xbox, etc.). Si une news se réfère à deux consoles différentes (PS2 et Xbox par exemple), je mets alors dans la case consoles la mention Multi.
Le problème, c'est que si un utilisateur clique sur Xbox, le programme va lui sortir les news Xbox et Multi (même si la news multi se réfère à PS2 et PC, vu que ce n'est pas précisé dans la table MySQL).
 
J'aimerais pouvoir préciser chacune des consoles séparément, de façon à ce que quand un utilisateur fait un tri sur une console précise, ça sorte non seulement les news contenant la console donnée mais en plus les news multi-consoles se référant à cette console donnée et non à toutes les news Multi.
 
Quelqu'un aurait une idée pour faire ça ?


Message édité par monsieur tomate le 16-02-2003 à 20:51:28

---------------
HardGamers.org
Reply

Marsh Posté le 16-02-2003 à 20:48:49   

Reply

Marsh Posté le 17-02-2003 à 07:32:37    

une table console
 
identifiant
nom
tout_ce_que_tu_veux_d'autre_concernant_une console
 
et dans ta table news tu ajoutes l'id de la console concernée dans ta clé primaire, et tu y inseres une ligne par news et par console

Reply

Marsh Posté le 19-02-2003 à 14:15:19    

ok merci, je vais voir ça


---------------
HardGamers.org
Reply

Marsh Posté le 19-02-2003 à 16:17:27    

pour éviter de la redondance de données, fait une troisième table "de correspondance" :  
id_news
id_console
les deux étant les clefs primaires, tu aura une indexation assez bonne. par contre, ça t'oblige à faire une ou deux jointures selon que tu veux récupérer les info de la news et/ou les infos console. ça reste une histoire d'optimisation en tous cas!

Reply

Marsh Posté le 19-02-2003 à 19:20:02    

oué, g commencé à traiter la chose. qd j'aurai fait des tables mysql assez optimisées et des requetes optimisées, je posterai le code ici pour voir ce que vous en pensez


---------------
HardGamers.org
Reply

Marsh Posté le 19-02-2003 à 21:05:06    

arghbis a écrit :

pour éviter de la redondance de données, fait une troisième table "de correspondance" :  
id_news
id_console
les deux étant les clefs primaires, tu aura une indexation assez bonne. par contre, ça t'oblige à faire une ou deux jointures selon que tu veux récupérer les info de la news et/ou les infos console. ça reste une histoire d'optimisation en tous cas!


 
pour un gros volume en base, effectivement ... mais la ...

Reply

Marsh Posté le 19-02-2003 à 21:53:49    

ben il faut voir en fonction de la taille prévue du site en phase d'exploitation! s'il le destine à un large publique, il y a des choix à faire dès le début pour ne pas se retrouver à tout refaire après!  :jap:

Reply

Marsh Posté le 19-02-2003 à 21:56:53    

le site comprend 4150 news en ce moment (j'ai déjà fait une séparation texte/autres champs pour éviter à devoir charger 2 Mo de données à chaque fois)


---------------
HardGamers.org
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed