IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Ordonner des valeurs venant de MySQL


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 10
    Par défaut Ordonner des valeurs venant de MySQL
    Bonjour,
    J'ai besoin d'aide pour l'arborescence de mon forum que je suis en train de creer.

    Voilà un petit schéma pour vous montrez ce que je veux faire:

    -Catégorie 1 (de la table "forum_cat" de MySQL)
    *rubrique 1 (de la table "forum_rub" de MySQL)
    *rubrique 2 (de la table "forum_rub" de MySQL)
    *rubrique 3 (de la table "forum_rub" de MySQL)

    -Catégorie 2 (de la table "forum_cat" de MySQL)
    *rubrique 1 (de la table "forum_rub" de MySQL)
    *rubrique 2 (de la table "forum_rub" de MySQL)
    *rubrique 3 (de la table "forum_rub" de MySQL)

    Et ainsi de suite...

    Donc, tout marche nikel pour la catégorie 1, mais pour la catégorie 2 et les autres non...

    Voici mes requêtes:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
    // Catégories du forum
    $categories_forum = mysql_query("SELECT cat_id, cat_nom, cat_desc, cat_forum FROM forum_cat ORDER BY cat_id");
    // Rubriques du forum
    $rubriques_forum = mysql_query("SELECT rub_id, rub_nom, rub_desc, rub_cat FROM forum_rub ORDER BY rub_id");
    ?>


    et voici le reste du code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
     
    <?php
    while($cat = mysql_fetch_assoc($categories_forum) ) {
    ?>
    	<tr class="b_cat">
    	<td colspan="3" class="n_forum">
     
     
    	<a href="#"><?php echo $cat['cat_nom'] ?></a>
     
    	</td>
     
    			<td class="cellule_centre">100009</td>
    			<td class="cellule_centre">100000</td>
     
    				<td class="dernier_msg">
     
    			</td>
     
     
    		</tr>
    		<?php while($rub = mysql_fetch_array($rubriques_forum)) { 
    		if($rub['rub_cat'] == $cat['cat_id']) {
    		?>
     
    				<tr class="ss_cat">
    				<td class="cellule_centre p">
     
    				<img src="./nouveau_message.png" alt="Nouveaux messages" title="Nouveaux messages" />
     
    				</td>
     
     
    			<td class="nom_forum">
    			<a href="#"><?php echo $rub['rub_nom'] ?></a><br />
     
    			<span class="description_forum"><?php echo $rub['rub_desc'] ?></span>
    			</td>
     
    			<td class="cellule_centre">999999</td>
    			<td class="cellule_centre">999999</td>
    			<td class="dernier_msg">
    				.....
    				<br />
     
    				par <a href="#">Test</a><br />
    				Dans <a href="#" title="Créé  hier à 15:29:55">.....</a> 
    			</td>
    	</tr>
    	<?php    
            }
         }
     }
    			  ?>

    Voilà, si vous avez compris mon problème et que vous avez une solution pour m'aider à le résoudre merci de m'en faire part

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Bonjour,

    Pourrais-tu pour commencer nous dire ce que ne fonctionne pas comme tu voudrais ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 10
    Par défaut
    Bonjour "sabotage",
    Alors en faite, le problème c'est que les rubriques s'affichent correctement dans la premiére catégorie mais j'ai l'impression que la boucle "while" ne se renouvelle pas dans la deuxième, puis la troisième et ainsi de suite... Tout marche pourtant parfaitement dans la première catégorie !

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Il faudrait que tu rembobines ton résultat de requete rubrique a chaque boucle de catégorie
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_data_seek($rubriques_forum,0);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre Expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Par défaut
    Ce n'est pas ca le problème, ton problème c'est que tu n'as aucun moyende savoir à quel catégorie appartient telle ou telle rubrique.

    En faisant le mysql_data_seek, tu auras la liste de toutes les rubriques dans chaque catégorie.

    Toi ce que tu veux, c'est lister les rubriques de chaque catégorie je suppose, donc un truc un peu comme çà :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $sql_cats = mysql_query('SELECT * FROM catagories');
    while($cat = mysql_fetch_assoc($sql_cats))
        {
        $sql_rubs = mysql_query('SELECT * FROM rubriques WHERE cat_id='.$cat['id']);
        while($rub = mysql_fetch_assoc($sql_rubs))
              {
              }
        }

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    ton problème c'est que tu n'as aucun moyende savoir à quel catégorie appartient telle ou telle rubrique.
    Il fait déjà le rapprochement categorie - rubrique
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if($rub['rub_cat'] == $cat['cat_id'])
    Le mysql_data_seek que je preconise n'est pas la pour trouver des informations, juste pour rembobiner le resultat de la deuxieme requete puisqu'il le parcours plusieurs fois.

    Pour moi sa methode reste valable (recuperer tous les enregistrements et faire le tri en php) par rapport a la tienne (faire des requetes multiples).
    Question de choix technique.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. Réponses: 15
    Dernier message: 18/02/2015, 17h34
  2. [Débutant] Calcul des valeurs venant des formulaires différents
    Par dieud2609 dans le forum VB.NET
    Réponses: 1
    Dernier message: 12/09/2014, 09h36
  3. [Débutant] Ordonner des valeurs
    Par TopCao dans le forum MATLAB
    Réponses: 4
    Dernier message: 02/03/2010, 14h42
  4. Re ordonner des valeurs dans un groupe
    Par stefsas dans le forum SAS Base
    Réponses: 2
    Dernier message: 11/06/2008, 15h50
  5. Récupérer des valeurs de checkbox dans MySQL
    Par digger dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 05/09/2005, 14h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo