Bonjour tout le monde. Je débute en extjs et j'ai quelques soucis dans l'affichage de résultats.
Je travaille avec une base oracle et je dois extraire des données sous forme xml avec php et les mettre dans des grid. Le problème c'est que je dois récupérer les paramètres de ma requête avec des données d'un grid alimenté dynamiquement. Voici une partie des codes
JAVASCRIPT :
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 PHP : <?php include('../config/connexion.php'); header('Content-type:text/xml;charset:iso-8859-1'); echo '<?xml version="1.0" encoding="iso-8859-1"?> <root>'; $req1 = "SELECT * FROM PERSONNES WHERE NUM=:NUM"; $s = oci_parse($ora_conn,$req1); oci_bind_by_name($s,":NUM",$_GET['num']); oci_execute($s); echo '<liste>'; while($row=oci_fetch_array($s,OCI_NUM)) { echo '<nom>'.$row[0].'</nom>'; echo '<prenom>'.$row[1].'</prenom>'; } echo '</liste>'; echo '</root>'; oci_free_statement($s); include('../config/deconnexion.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
22
23 var gridpersonne = new Ext.grid.GridPanel({title:'Liste des personnes',region:'center',id:'listes',width:900,height:500,store:store4,stripeRows: true,stateful: true,columns:[{header: "Nom", width: 50, dataIndex: 'nom', sortable: true}, {header: "Prénom", width: 180, dataIndex: 'prenom', sortable: true} ],sm: new Ext.grid.RowSelectionModel({singleSelect: true,listeners: { rowselect: function(sm,index,record) { liste.setActiveTab(1); var num=record.data.num; //Cette première requête récupère des données json Ext.Ajax.request({url:'fonc.php?num='+num,success:function(x){ var resultat = Ext.decode(x.responseText); if(resultat) { Ext.getCmp('numero').setValue(resultat.num);Ext.getCmp('param').setValue(resultat.param); Ext.Ajax.request({url:'fonc2.php?num='+num,success:function(x){var resultat = x.responseXML;if(resultat!=-1){storeliste.loadData(resultat);}},failure:function(){Ext.Msg.show({icon:Ext.Msg.ERROR,ttile:'Erreur'});}}); } }, failure:function(){Ext.Msg.show({icon:Ext.Msg.ERROR,ttile:'Erreur'});}}); } } } )}); mon store: var storeliste = new Ext.data.XmlStore({record:'liste',fields:[{name:'nom',mapping:'nom'},'prenom']});
La requête php retourne bien le résultat attendu mais mon grid n'affiche qu'une seule ligne. Même firebug ne me donne pas d'erreur. Aidez-moi svp je bute dessus depuis quelques heures. Merci d'avance
Partager