Projet d'apllication web avec XUL, PHP, AJAX et XML
Publié : 29 oct. 2009, 19:53
Bonjour à tous,
J'ai actuelement un projet (non profesionnel) de réaliser une application web qui se base sur plusieurs langage et protocoles que sont XUL, PHP, AJAX et XML.
J'ai déjà fait une partie de l'interface avec XUL mais la je suis bloqué sur un problême qui me paraît assez compliqué ^^
Donc voila le problême : j'ai un fichier XML qui est la "copie" d'une BDD (mais c pas la le prob...) Donc je récupère ce XML avec une requete AJAX. Ensuite je voudrais transformer ce fichier XML en tableau sur l'interface de l'utilisateur. Mais la est le problême, je souhaite utiliser un arbre (car pratique, rapide et beau ^^) mais comme je ne voudrais pas utiliser de RDF pour question de portatibilité avec les autres languages, comment transformer ce XML en arbre?
J'essaye actuelement de trouver en utilisant nsITreeView et voila ce que j'ai pour l'instant:
code Javascript/nsITreeView :
La fonction afficherAcheteur() est appelé au clique sur un bouton
et voici une partie de mon code XUL :
et enfin voici un exemple du fichier XML :
Mais comme dit, si je vient ici c'est que ca marche pas. En l'occurence, ici rien ne se passe, j'ai beau cliquer sur le bouton, l'arbre ne se remplit pas et dans firebug, le code HTML/XUL ne change pas d'un poil...
Merci d'avance pour votre aide,
Inarius
J'ai actuelement un projet (non profesionnel) de réaliser une application web qui se base sur plusieurs langage et protocoles que sont XUL, PHP, AJAX et XML.
J'ai déjà fait une partie de l'interface avec XUL mais la je suis bloqué sur un problême qui me paraît assez compliqué ^^
Donc voila le problême : j'ai un fichier XML qui est la "copie" d'une BDD (mais c pas la le prob...) Donc je récupère ce XML avec une requete AJAX. Ensuite je voudrais transformer ce fichier XML en tableau sur l'interface de l'utilisateur. Mais la est le problême, je souhaite utiliser un arbre (car pratique, rapide et beau ^^) mais comme je ne voudrais pas utiliser de RDF pour question de portatibilité avec les autres languages, comment transformer ce XML en arbre?
J'essaye actuelement de trouver en utilisant nsITreeView et voila ce que j'ai pour l'instant:
code Javascript/nsITreeView :
Code : Tout sélectionner
var tableauAcheteur = {
rowCount : function() { return getXmlAcheteur().getElementsByTagName('numAcheteur').length; },
getCellText : function(row,column) {
if (column == 'Numéro de l\'acheteur')
return getXmlAcheteur().getElementsByTagName('numAcheteur')[row].firstChild.nodeValue;
else if (column == 'Nom')
return getXmlAcheteur().getElementsByTagName('nom')[row].firstChild.nodeValue;
else if (column == 'Prénom')
return getXmlAcheteur().getElementsByTagName('prenom')[row].firstChild.nodeValue;
else if (column == 'Adresse')
return getXmlAcheteur().getElementsByTagName('adresse')[row].firstChild.nodeValue;
else if (column == 'Code postal')
return getXmlAcheteur().getElementsByTagName('codePostal')[row].firstChild.nodeValue;
else if (column == 'Ville')
return getXmlAcheteur().getElementsByTagName('ville')[row].firstChild.nodeValue;
else if (column == 'Facture (oui/non)') {
if (getXmlAcheteur().getElementsByTagName('facture')[row].firstChild.nodeValue == 0)
return 'non';
else
return 'oui';
} else
return '';
},
setTree: function(treebox){ this.treebox = treebox; },
isContainer: function(row){ return false; },
isSeparator: function(row){ return false; },
isSorted: function(row){ return false; },
getLevel: function(row){ return 0; },
getImageSrc: function(row,col){ return null; },
getRowProperties: function(row,props){},
getCellProperties: function(row,col,props){},
getColumnProperties: function(colid,col,props){}
};
function afficherAcheteur() {
document.getElementById('tableauAcheteur').view = tableauAcheteur ;
}
et voici une partie de mon code XUL :
Code : Tout sélectionner
<hbox id="boiteTableauAcheteur" flex="1">
<tree id="tableauAcheteur">
<treecols>
<treecol label="Numéro de l'acheteur"/>
<treecol label="Nom"/>
<treecol label="Prénom"/>
<treecol label="Adresse"/>
<treecol label="Code postal"/>
<treecol label="Ville"/>
<treecol label="Facture (oui/non)"/>
</treecols>
<treechildren />
</tree>
</hbox>
Code : Tout sélectionner
<?xml version="1.0" encoding="UTF-8"?>
<vente>
<acheteur>
<numAcheteur>1</numAcheteur>
<nom>dgd</nom>
<prenom>sg</prenom>
<adresse>sddg</adresse>
<codePostal>231</codePostal>
<ville>sg</ville>
<facture>1</facture>
</acheteur>
<acheteur>
<numAcheteur>2</numAcheteur>
<nom>ddg</nom>
<prenom>sg</prenom>
<adresse>srg</adresse>
<codePostal>65</codePostal>
<ville>sdff</ville>
<facture>0</facture>
</acheteur>
<acheteur>
<numAcheteur>3</numAcheteur>
<nom>dgd</nom>
<prenom>sg</prenom>
<adresse>sddg</adresse>
<codePostal>231</codePostal>
<ville>sg</ville>
<facture>1</facture>
</acheteur>
</vente>
Merci d'avance pour votre aide,
Inarius