Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
731 connectés 

  FORUM HardWare.fr
  Programmation
  Perl

  Formulaire Perl/CGI générant du XML

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Formulaire Perl/CGI générant du XML

n°1410260
henri_kuy
Posté le 20-07-2006 à 15:18:31  profilanswer
 

Bonjour,
 
Je me permets de solliciter votre aide et vos avis.
Je dois faire un projet qui me facilite la saisie des stratégies de sauvegarde car actuellement, je le fais manuellement sous Excel. Ayant l'habitude de faire des formulaires sous PHP avec une base MySQL, on m'a imposé de faire ce projet en Perl/CGI générant un fichier XML comme résultat (je n'ai aucune connaissance de base sur ces derniers langages).  
Donc l'outil que je veux développer, il y a un formulaire pour saisir un nouveau serveur avec sa stratégie. Le résultat de la saisie va générer un fichier XML, il peut être consulter (donc je dois le parser) et il peut aussi être mis-à-jour.
On m'a conseillé l'API XML::Twig avec le tutorial http://xmltwig.com/ mais je ne comprends pas grand chose.
Pensez-vous qu'il est possible, à l'aide d'un formulaire, d'arriver à générer ce résultat ?
 

Code :
  1. <?xml version="1.0"?>
  2. <tinaBackup>
  3. <host>
  4. <name>freo056s</name>
  5. <catalog>cat_freo056s</catalog>
  6. <pool>
  7. <daily>
  8. <quot1>AJ1245L1</quot1>
  9. <quot2>AJ5689L1</quot2>
  10. </daily>
  11. <weekly>
  12. <h1>
  13. <hebd11>AJ2356L1</hebd11>
  14. <hebd12>AJ1478L1</hebd12>
  15. </h1>
  16. <h2>
  17. <hebd21>AJ8521L1</hebd21>
  18. <hebd22>AJ0210L1</hebd22>
  19. </h2>
  20. <h3>
  21. <hebd31>AJ6589L1</hebd31>
  22. <hebd32>AJ0001L1</hebd32>
  23. </h3>
  24. <h4>
  25. <hebd41>AJ5555L1</hebd41>
  26. <hebd42>AJ5210L1</hebd42>
  27. </h4>
  28. <h5>
  29. <hebd51>AJ7896L1</hebd51>
  30. <hebd52>AJ6987L1</hebd52>
  31. </h5>
  32. </weekly>
  33. <monthly>
  34. <m1>
  35. <mens11>AJ1020L1</mens11>
  36. <mens12>AJ0314L1</mens12>
  37. </m1>
  38. <m2>
  39. <mens21>AJ9632L1</mens21>
  40. <mens22>AJ4102L1</mens22>
  41. </m2>
  42. <m3>
  43. <mens31>AJ5541L1</mens31>
  44. <mens32>AJ4413L1</mens32>
  45. </m3>
  46. </monthly>
  47. <annually>
  48. <year1>AJ1548L1</year1>
  49. <year2>AJ1948L1</year2>
  50. </annually>
  51. <manually>
  52. <test1>AJ4613L1</test1>
  53. <test2>AJ0274L1</test2>
  54. </manually>
  55. <spare>
  56. <spare1>AJ4652L1</spare1>
  57. <spare2>AJ2580L1</spare2>
  58. </spare>
  59. </pool>
  60. <calendar>
  61. <year>2006</year>
  62. <weeks>
  63. <w1>H1</w1>
  64. <w2>H2</w2>
  65. <w3>H3</w3>
  66. <w4>H4</w4>
  67. <w5>H5</w5>
  68. </weeks>
  69. </calendar>
  70. <comments></comments>
  71. </host>
  72. <host>
  73. <name>freo080s</name>
  74. <catalog>cat_freo080s</catalog>
  75. <pool>
  76. <daily>
  77. <quot1>AJ1201L1</quot1>
  78. <quot2>AJ1235L1</quot2>
  79. </daily>
  80. <weekly>
  81. <h1>
  82. <hebd11>AJ1515L1</hebd11>
  83. <hebd12>AJ1526L1</hebd12>
  84. </h1>
  85. <h2>
  86. <hebd21>AJ8495L1</hebd21>
  87. <hebd22>AJ3265L1</hebd22>
  88. </h2>
  89. <h3>
  90. <hebd31>AJ7894L1</hebd31>
  91. <hebd32>AJ8415L1</hebd32>
  92. </h3>
  93. <h4>
  94. <hebd41>AJ8412L1</hebd41>
  95. <hebd42>AJ8411L1</hebd42>
  96. </h4>
  97. <h5>
  98. <hebd51>AJ8451L1</hebd51>
  99. <hebd52>AJ2595L1</hebd52>
  100. </h5>
  101. </weekly>
  102. <monthly>
  103. <m1>
  104. <mens11>AJ4815L1</mens11>
  105. <mens12>AJ9632L1</mens12>
  106. </m1>
  107. <m2>
  108. <mens21>AJ4815L1</mens21>
  109. <mens22>AJ1202L1</mens22>
  110. </m2>
  111. <m3>
  112. <mens31>AJ1548L1</mens31>
  113. <mens32>AJ4859L1</mens32>
  114. </m3>
  115. </monthly>
  116. <annually>
  117. <year1>AJ1502L1</year1>
  118. <year2>AJ3625L1</year2>
  119. </annually>
  120. <manually>
  121. <test1>AJ4859L1</test1>
  122. <test2>AJ3625L1</test2>
  123. </manually>
  124. <spare>
  125. <spare1>AJ0214L1</spare1>
  126. <spare2>AJ9635L1</spare2>
  127. </spare>
  128. </pool>
  129. <calendar>
  130. <year>2006</year>
  131. <weeks>
  132. <w1>H1</w1>
  133. <w2>H2</w2>
  134. <w3>H3</w3>
  135. <w4>H4</w4>
  136. <w5>H5</w5>
  137. </weeks>
  138. </calendar>
  139. <comments></comments>
  140. </host>
  141. </tinaBackup>


 
J'ai fais moi même le fichier XML, n'ayant pas de connaissance, je ne sais pas s'il est valide ou pas.
Merci.
 
Henri

mood
Publicité
Posté le 20-07-2006 à 15:18:31  profilanswer
 

n°1411400
Danjer
Posté le 22-07-2006 à 13:08:44  profilanswer
 

Salut,
 
Ca ne ressemble pas trop a ton arbre mais c'est une maniere plutot simple de faire ce que tu veux... enfin dans certaines limites.
 
 - Tu organises ton formulaire,
 - Tu remplis ta hash,
 - Et tu aura un truc proche de ce que tu veux...
 
 

Code :
  1. #!/usr/bin/perl -w
  2. use XML::Simple;
  3. use strict;
  4. my $hash = {
  5.  tinaBackup => {
  6.         host => {
  7.    name => 'freo056s',
  8.    catalog => 'cat_freo056s',
  9.    pool => {
  10.      daily => {
  11.         quot1 => 'AJ1245L1',
  12.         quot2 => 'AJ5689L1',
  13.        },
  14.      weekly => {
  15.          H1 => {
  16.          hebd11 => 'AJ2356L1',
  17.          hebd12 => 'AJ1245L1',
  18.         },
  19.        },
  20.     },
  21.          },
  22.   },
  23.  };
  24. print XMLout($hash,  KeepRoot => 1, NoAttr => 1);


Message édité par Danjer le 22-07-2006 à 13:12:18

---------------
Cdl, Danjer

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Perl

  Formulaire Perl/CGI générant du XML

 

Sujets relatifs
Probléme de chargement d'image avec GD et FormulaireAccès à une valeur de formulaire par l'intermédiaire d'une variable
Quel parseur XML pour une utilisation dans du C++[Access] SQL direct et formulaire
[Perl] générer une variable grace à une chaine[asp][1.1] Fichier XML dans un tableau
[MySQL/PHP] problème d'encodage à l'insertion via formulaireMon projet XML+XSL
executer un script perl periodiquement[Access] Zone de liste et doublons dans formulaire
Plus de sujets relatifs à : Formulaire Perl/CGI générant du XML


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR