begin process at 2012 05 31 05:15:26
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

L'ordre dans les requêtes :-?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

L'ordre dans les requêtes :-?

dimanche 16 septembre 2007 à 22:56:33 | L'ordre dans les requêtes :-?

yazerty55

Bonjour,

Grâce à l'aide de phpcs j'ai réussi à créer un fonction qui affiche la liste des catégories d'un petit annuaire que je suis en train de créer. Mais j'ai un problème d'ordre d'affichage de mes catégories.

le code suivant :
<?php
echo "<select name=\"category\">
<option value=\"\">Catégories :</option>";
// Séctionner les catégories en dessous de l'actuelle
$sql ="SELECT * FROM categories";
$req = mysql_query($sql) or die(mysql_error());
while ($db_data = mysql_fetch_assoc($req)) {
    $category_id = $db_data['category_id'];
    $sql_sub ="SELECT * FROM categories WHERE parent_num=$category_id ORDER BY parent_num";
    $req_sub = mysql_query($sql_sub) or die(mysql_error());
    if (mysql_num_rows($req_sub)>0) {
        while ($db_data_sub = mysql_fetch_assoc($req_sub)) {
            cat_tree_add ($db_data_sub['category_id'], $category);
        }
    }
}
echo "</select>";
?>

affiche mes catégories correctement mais pas dans un ordre classé. Par exemple j'ai :
Loisits et divertissements > Sport
Loisits et divertissements > Tourisme
Loisits et divertissements > Sport > Rugby
Loisits et divertissements > Sport > Foot

Or bien évidemment je voudrais faire :
Loisits et divertissements > Tourisme
Loisits et divertissements > Sport
Loisits et divertissements > Sport > Rugby
Loisits et divertissements > Sport > Foot

Pour information ma table categories est faite de telle manière :
CREATE TABLE `categories` (
  `category_id` int(11) NOT NULL,
  `parent_num` int(11) NOT NULL,
  `category` varchar(100) NOT NULL,
  `category_desc` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Contenu de la table `categories`
--

INSERT INTO `categories` VALUES (1, 0, 'Art & Culture', '');
INSERT INTO `categories` VALUES (2, 1, 'Musées', '');
INSERT INTO `categories` VALUES (3, 1, 'Musique', '');
(...)
INSERT INTO `categories` VALUES (16, 0, 'Loisirs & divertissement', '');
(...)
INSERT INTO `categories` VALUES (23, 6, 'Santé', '');
INSERT INTO `categories` VALUES (24, 7, 'Annuaires liens durs', '');
INSERT INTO `categories` VALUES (25, 0, 'Divers', '');
INSERT INTO `categories` VALUES (26, 22, 'Rugby', '');
INSERT INTO `categories` VALUES (27, 22, 'Foot', '');
INSERT INTO `categories` VALUES (28, 0, 'BD blogs', '');
INSERT INTO `categories` VALUES (29, 0, 'Politique', '');
INSERT INTO `categories` VALUES (30, 29, 'Droit', '');
INSERT INTO `categories` VALUES (31, 29, 'Personnalités politiques', '');
INSERT INTO `categories` VALUES (32, 29, 'Institutions', '');
INSERT INTO `categories` VALUES (33, 25, 'Animaux', '');
INSERT INTO `categories` VALUES (34, 16, 'Tourisme', '');

Je ne comprends pas comment ordonner mes requêtes SQL pour avoir une sortie ordonnée correctement, groupée comme il le faut.J'ai déjà essayé plusieurs tatonnements mais aucun n'a été satisfaisant :-/...

Pourriez-vous m'aider s'il vous plait :-?

lundi 17 septembre 2007 à 06:38:55 | Re : L'ordre dans les requêtes :-?

jeca

Bonjour, Va voir là : http://sqlpro.developpez.com/cours/arborescence/
lundi 17 septembre 2007 à 14:06:43 | Re : L'ordre dans les requêtes :-?

yazerty55

Merci pour ta réponse mais malheureusement je comprends à peu près la première partie. Mais les suivantes pas du tout, ça devient trop complexe pour un simple débutant comme moi  :-/.
J'ai fait ça par une méthode récursive parce qu'on m'a dit que ça fonctionnait et ça fonctionne apparemment presque bien ce que j'ai fait, sauf le regroupement par parent.


Cette discussion est classée dans : insert, into, values, categories, category


Répondre à ce message

Sujets en rapport avec ce message

REQUETE DE TRI [ORDER BY] [ par ] Bonjour !Je souhaiterais pouvoir classer mes données selon 3 critères : par nom de fiche, par date ou par thème.Les requêtes seules fonctionnent (quan Requete MySQL [ par vbguigui ] Voici ma requete :$requete="INSERT INTO tablemessages VALUES('$contenu')";quand mon contenu est "test" alors ca marche : "INSERT INTO tablemessages VA Envoyer des variables generées dynamiquement vers une autre page php [ par DzinVolt_Original ] Bonjour, J'ai cree un menu composé de 3 listes deroulantes dependante les une des autres (qui fonctionnent). Les "options" sont tirées d'une base de insertion multiple dans mysql_query() [ par Urukai1 ] Bonjour, je souhaite inserer plusieurs tuples sur plusieurs tables en meme temps, ce que je souahite faire c un commit comme sous oracle en gros "in Problème de SQL [ par The_Wide_World ] HelloVoila une question qui concerne plus MySQL...J'ai cette commande : SELECT DISTINCT u.id, u.pseudo, g.Idprojet FROM User u LEFT JOIN Groupe g ON ( Probléme au niveau de récupération de valeur psot [ par khafis ] Avant tout je m'explique : j'ai deux zones de liste multiple,  la premiére se remplit directement par la base de donnée , la deusiéme  sert  à recupér Optimisation [ par skiso ] je sais que mon script n'est pas optimal et comporte surement des erreurs, je veux savoir es que je suis sur la bonne voie, si c'est pas le cas je veu Liste Déroulante + Order [ par xeroxiss ] Bonjour à tous ! J'ai créer 2 petites listes déroulantes remplient d'une longue série de divers marques de pc.Elle sont donc "liées" à une bdd. Ce que Saisie Automatique Sql [ par xeroxiss ] Bonjour à tout les petits ternautes rois du php ! Voila j'ai un petit soucis tout simple (je pense)... J'ai un formulaire en php, contenant des liste Remplir une table avec le contenu d'un fichier txt [ par boscoauhunier ] Je désire remplir une table avec le contenu d'un fichier txt Ma table se structure ainsi Structure de la table `dico` CREATE TABLE `dico` ( `id`


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,577 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales