Bonjour,

J'utilise amfphp pour récupèrer des données dans une base mysql, avec les données récupèrer je souhaite créer un menubar. J'ai réussi à créer mon premier niveau de menu mais je sais absolu pas comment créer les sous_menus.

voici mon 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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" initialize="init();" backgroundGradientColors="[#ffffff, #ffffff]">
	<mx:Script>
		<![CDATA[
			import mx.events.MenuEvent;
			import mx.controls.treeClasses.DefaultDataDescriptor;
			import mx.controls.dataGridClasses.DataGridColumn;
        	import mx.events.DataGridEvent;
        	import mx.collections.ArrayCollection;
            import mx.managers.CursorManager;
            import mx.rpc.events.ResultEvent;
            import mx.rpc.events.FaultEvent;
            import mx.controls.Alert;
            import encoding.PNGEnc;
            import flash.utils.describeType;
            import events.RemoveEvent;
 
			 [Bindable]
			private var niveau_prestations:ArrayCollection;	
 
			[Bindable]
			private var produit_prestations:ArrayCollection;			
 
			private function init ():void 
 
		    {
				monService.liste_niveaux();
		    }
 
			private function onChange(e:MenuEvent):void
			{
				var menu:XML=XML(e.item);
				var command:String=menu.@command.toString();
				trace(command);
			}
 
			private function liste_niveau_result (evt:ResultEvent):void
			{
				niveau_prestations = ArrayCollection ( evt.result );
			}
			private function liste_produit_result (evt:ResultEvent):void
			{
				monService.liste_produits(pEvt.id_niveau);
				produit_prestations = ArrayCollection ( evt.result );
			}
		]]>
	</mx:Script>
 
	<mx:RemoteObject id="monService" showBusyCursor="true" source="prestations.prestations" destination="amfphp">
				<mx:method name="liste_niveaux" result="liste_niveau_result(event)" />
				<mx:method name="liste_produits" result="liste_produit_result(event)" />
	</mx:RemoteObject>
 
	<mx:Panel y="0" width="984" height="796" layout="absolute" x="0" title="PRESTATIONS">
		<mx:MenuBar x="10" y="10" width="944" change="onChange(event)" dataProvider="{produit_prestations}" labelField="titre" >
 		</mx:MenuBar>
		<mx:TextArea x="10" y="81" height="173" width="944" color="#c0c0c0" editable="false" borderStyle="none">
			<mx:text><![CDATA[Si la majorité des chiffres liés au commerce sur internet proviennent de grands portails nationaux, il peut y avoir une réelle opportunité à s'essayer à cette aventure désormais de moins en moins risquée.
 
Alors que les portails de e-commerce sont de plus en plus accessible financièrement, le nombre d'utilisateurs ne cesse d'augmenter : on totalise chez les 4 acteurs principaux du paiement en ligne ( 80% des paiement en ligne) plus de 20 millions de transactions pour un montant d'1,8 Milliard d'euros représentant une augmentation de 53% par rapport au second trimestre 2005*.
 
Les internautes ont pour la majorité passé la barrière du paiement en ligne, se sont des consommateurs avertis qui sauront voir la valeur ajoutée que vous leur proposez, nombre de nos clients en ont fait la démonstration.
 
Que vous commercialisiez des produits "de niche" ou que vous ayez une légitimité de spécialiste, n'hésitez plus : prenez des parts de marché !
 
source   second trimestre 2006]]></mx:text>
		</mx:TextArea>
		<mx:Label x="10" y="55" text="Vente aux particuliers" width="944" color="#808080" fontWeight="bold"/>
		<mx:Label x="10" y="276" text="Références associés" width="944" color="#0080ff"/>
		<mx:Label x="31" y="318" text="VANDENCASTEELE" width="136" color="#0080c0" alpha="0.84"/>
		<mx:Label x="163" y="318" text="Site e-commerce" color="#808080" fontWeight="bold"/>
		<mx:TextArea x="163" y="357" width="791" height="88" color="#0080ff" editable="false" borderStyle="none">
			<mx:text><![CDATA[Cette société de renommée régionale qui se développe au travers de ses points de vente, a décidé de se lancer dans la vente en ligne. 
Cette étape récente connaît déjà un succès auprès des consommateurs et a permis notamment de mieux faire connaître l'étendu des gammes 
produits aussi bien aux anciens clients qu'aux nouveaux venus.]]></mx:text>
		</mx:TextArea>
		<mx:Image x="31" y="357" width="108" height="54">
			<mx:source>file:///C|/Users/Public/Pictures/Sample Pictures/Garden.jpg</mx:source>
		</mx:Image>
	</mx:Panel>
 
</mx:Application>
voici mon fichier de service complet PHP:
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
<?php
class prestations
{
        function prestations ( )
        {
                // connexion mysql
                mysql_connect ("localhost", "root", "mdp");
                mysql_select_db ("bdd_db");
        }
        
        function liste_niveaux()
        {
                return mysql_query("SELECT * FROM prestation_niveau,prestation_niveau_libelle_fr WHERE prestation_niveau.id_niveau=prestation_niveau_libelle_fr.id_niveau AND id_parent='2'");
        }
        
        function liste_produits($id_niveau)
        {
                return mysql_query("SELECT * FROM prestation_1,prestation_1_caracteristique_fr WHERE prestation_1.id_produit=prestation_1_caracteristique_fr.id_produit AND prestation_1.id_niveau='".$id_niveau."'");
        }
}
?>
Donc avec ce fichier de service, j'aimerai créer un menubar avec sous-menu, le 1er niveau de ce menu sera ce qui résulte de liste_niveaux, donc j'arrive à afficher ce menu, mais j'aimerai au clique d'un onglet, qu'il m'affiche la liste des produits associés à ce niveau sous forme d'un sous-menu.

par exemple:
liste_niveau me donne 3 onglets : informatique-bureautique-adminitratif, lorsque je clique sur informatique, j'affiche un sous-menu résultant de liste_produits : exemple: hardware et software en ayant passé en paramètres l'id du niveau(informatique dans mon exemple).

J'espere être clair, sinon je sui à dispo pour plus de précision.

d'avance merci