| |||||
| Dernière réponse | |
|---|---|
| Sujet : [PHP] Problème avec un WHILE :( | |
| Max Evans | Oki, v essayer de faire comme ca :) |
| Aperçu |
|---|
| Vue Rapide de la discussion |
|---|
| Max Evans | Oki, v essayer de faire comme ca :) |
| skylight |
|
| skylight | oué l'ancien :D (ptin kes ke c crade :lol:)
bon deja il serait bcp + simple que tu recopie les champs dateheure et lastauteur dans forum_categories d'une part ca eviterai une jointure, (qui est tjs + lourd et + lent) et donc ca allege le serveur d'autres part tu as tout en 1 requete ... pour la page principale, mon vrairum ne fait que 2 requetes pour tout avoir (posts, config ...) |
| Max Evans | C en gros les memes que celle de ton forum :)
CREATE TABLE forum_categories ( id tinyint(4) NOT NULL auto_increment, idforum tinyint(4) NOT NULL default '0', nom varchar(50) NOT NULL default '', totaltopics smallint(4) NOT NULL default '0', totalposts smallint(4) NOT NULL default '0', modérateur varchar(50) NOT NULL default '', description varchar(255) NOT NULL default '', KEY id (id) ) TYPE=MyISAM; # -------------------------------------------------------- # # Structure de la table `forum_topics` # CREATE TABLE forum_topics ( topic int(11) unsigned NOT NULL auto_increment, idforum tinyint(4) NOT NULL default '0', categorie tinyint(4) NOT NULL default '0', icone int(11) default '1', titre varchar(100) NOT NULL default '0', auteur varchar(50) NOT NULL default '0', replys int(11) unsigned NOT NULL default '0', views int(11) unsigned NOT NULL default '0', dateheure datetime NOT NULL default '0000-00-00 00:00:00', lastauteur varchar(50) NOT NULL default '0', close tinyint(5) NOT NULL default '0', PRIMARY KEY (topic) ) TYPE=MyISAM; |
| skylight | fais voir la structure de tes tables alors |
| Max Evans | Nop, ca marche po, ca m'affiche a chaque fois 4 fois le nom de la categorie :( |
| Max Evans | merchi sky, v tester :) |
| skylight |
|
| Max Evans |
|
| Max Evans |
|
| youdontcare | tu n'as qu'à faire une jointure (une gauche je crois). tu auras l'id du forum, dateheure et lastposteur tous rangés dans le même tableau, id restant identique tant que tu es dans le même forum (voilà pour la détection des différents forum).
cherche left join (ou les join en général si c'est pas ça :D). |
| Max Evans | J'ai aussi testé :
|
| kayasax | :??:
ta requete est comme ca: $sql = "SELECT * FROM forum_categories WHERE idforum='$id'"; donc si je suis pas trop con normalement idforum est unique => le resultat de ta requete ne renvoi donc qu'une ligne |
| Max Evans | Hello :hello: Justement non, je suis obligé de faire un WHILE, car apres c un tableau qui est généré :( |
| kayasax | si le resultat de ta 1ere requete ne renvoie qu'une seule ligne tu n'est pas oblige de faire un while, tu mets directos $data = mysql_fetch_array($req); |
| Max Evans | Hello a tous :hello: Voila, g un probleme, je suis en train de faire un forum, et je suis coincé :) Voila le code :
|




