créer un formulaire a partir d'une DTD grace a PHP

créer un formulaire a partir d'une DTD grace a PHP - PHP - Programmation

Marsh Posté le 15-10-2005 à 00:57:57    

Je souhaite créer un formulaire a partir d'une DTD, pour ensuite enregistrer les data du formulaire dans un fichier XML
 
Je cherche donc un traitement PHP pour faire  
DTD vers formulaire
Si qqn peut me donner des pistes...
 
En ce qui concerne le traitement PHP pour recupérer les variables et ecrire le fichier XML,
est ce qu'il existe qqch de plus simple que l'ecriture avec des fputs dans un fichier? (grace a la techno PHP-XML)

Reply

Marsh Posté le 15-10-2005 à 00:57:57   

Reply

Marsh Posté le 15-10-2005 à 02:18:32    

Vu que je suis trop endormi pour tenter de comprendre la première question :
 

pongo59 a écrit :


En ce qui concerne le traitement PHP pour recupérer les variables et ecrire le fichier XML,
est ce qu'il existe qqch de plus simple que l'ecriture avec des fputs dans un fichier? (grace a la techno PHP-XML)


 
Ouais, suffit déjà de jeter un oeil du côté de la Dom XML, voir dans les libs de PEAR consacrées au sujet, il devrait y avoir de quoi faire. (je te renvois donc aux sites pour plus de détails, ils feront ça mieux que moi :))

Reply

Marsh Posté le 15-10-2005 à 12:46:53    

Pour la premiere question,
 
j'ai une DTD du style:
 
<!ELEMENT ESPECE (AUTEUR, ...)>
 
<!ELEMENT AUTEUR  (FAMILLE, PRENOM)>
<!ELEMENT FAMILLE (#PCDATA)>
<!ELEMENT PRENOM (#PCDATA)>
 
 
Et je veux créer un formulaire qui me demande de remplir les PCDATA
 

Reply

Marsh Posté le 15-10-2005 à 15:16:52    

alors je suis pas forcément sûr d'avoir capter tout comme il faut, je dois être encore endormi aussi :D  
mais, DTD pour le formulaire ?
 
je comprends ton exposé ainsi
récupérer des infos genre FAMILLE, PRENOM, depuis un formulaire d'une page html
créer un doc XML correspondant à la DTD
 
mais as-tu voulu dire :
parser la DTD
récupérer le nom des éléments PCDATA trouvés
générer formulaire html ad-hoc sur une page html
créer un doc XML correspondant à la DTD
 
si oui pour la partie DOM XML tu pourras
- générer ton fichier XML avec DOMDocument->save() - pas de fputs ou autre
- le valider contre sa DTD avec DOMDocument->validate()  
 
et pour parser la DTD, bah à part une tite moulinette à DTD, je ne connais pas, mais ce n'est pas pour autant que ...  :D
 
edit: typo


Message édité par shakpana le 15-10-2005 à 15:19:37
Reply

Marsh Posté le 15-10-2005 à 20:14:00    

J'ai en effet voulu dire:  
parser la DTD  
récupérer le nom des éléments PCDATA trouvés  
générer formulaire html ad-hoc sur une page html  
 
et lorsque les données du formulaires sont envoyées
créer un doc XML correspondant à la DTD avec les données du formulaire

Reply

Marsh Posté le 15-10-2005 à 20:49:11    

donc
1.
- soit tu attaques un objet DOM XML lié à ta DTD pour créer ton formulaire, mais j'en vois pas forcément l'intérêt ...
- soit tu parses la DTD à coup de regex pour récupérer les PCDATA, et ça n'a d'intêret que s'ils changent régulièrement
- soit ils ne changent pas, tu fais un formulaire statique tout con ...
[edit : je vois pas d'autres alternatives ...]
 
2.
tu te fais une classe Implémentation DOM liée à ta DTD
/*
DOMImplementation
createDocumentType
*/

tu crées un nouveau doc DOM XML selon ton implémentation
tu lui ajoutes tous les enfants neccessaires en fonction des paramètres postés
/*
DOMDocument
createElementNS
createElement
setAttribute
appendChild
createTextNode
*/

et hop à l'écran, dans un fichier, whatever
/*
DOMDocument
save
saveXML
*/

 
Donc ya du taf ... mais DOM XML est le chemin à suivre ...
 
edit : un peu de couleur  :D


Message édité par shakpana le 15-10-2005 à 21:00:40
Reply

Marsh Posté le 18-10-2005 à 14:14:55    

ok, merci pour les infos... Allez hop! Au boulot!

Reply

Marsh Posté le 18-10-2005 à 14:54:05    

Laisse tomber les DTD vieillissantes, et passe à XMLSchema. Tu te fais un schéma xsd, puis tu peux le parser avec DOM [:dawa] Et comme ça t'as ta définition du formulaire parsable en dix secondes :)

Reply

Marsh Posté le 19-10-2005 à 17:33:05    

je ne connaissais pas... en fait, les schémas XSD, c'est des DTD, mais en XML...? Tu as un tuto sympa?
 
Merci en tout cas

Reply

Marsh Posté le 19-10-2005 à 19:22:11    

Pas de tuto sympa... Ou peut-être celui de w3schools :)

Reply

Marsh Posté le 19-10-2005 à 19:22:11   

Reply

Marsh Posté le 19-10-2005 à 22:28:27    

FlorentG a écrit :

Laisse tomber les DTD vieillissantes, et passe à XMLSchema. Tu te fais un schéma xsd, puis tu peux le parser avec DOM [:dawa] Et comme ça t'as ta définition du formulaire parsable en dix secondes :)


 
Qui c'est qui a envoyé a la gueule d'un noob le dtd html4.1 il y a quelques mois parcequ'il en avait marre des questions stupides?   :lol:  :lol:  :lol:


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 20-10-2005 à 11:02:02    

Hihi [:joce]

Reply

Marsh Posté le 24-10-2005 à 04:20:44    

J'adore la confiture  :p

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed