Advertisement
Guest User

Untitled

a guest
Jan 16th, 2019
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.22 KB | None | 0 0
  1. =============XML===============
  2. <?xml version="1.0" encoding="UTF-8"?>
  3. <?xml-stylesheet type="text/xsl" href="w.xsl"?>
  4.  
  5. <!DOCTYPE baza
  6. [
  7. <!ELEMENT imie (#PCDATA)>
  8. <!ELEMENT nazwisko (#PCDATA)>
  9. <!ELEMENT nazwa (#PCDATA)>
  10. <!ELEMENT ile (#PCDATA)>
  11.  
  12. <!ELEMENT wykladowca (imie, nazwisko)>
  13. <!ELEMENT zajecie (nazwa)>
  14. <!ELEMENT prowadzenie (ile)>
  15.  
  16. <!ELEMENT wykladowcy (wykladowca+)>
  17. <!ELEMENT zajecia (zajecie+)>
  18. <!ELEMENT prowadzenie_zaj (prowadzenie+)>
  19.  
  20. <!ATTLIST wykladowca id_w ID #REQUIRED>
  21. <!ATTLIST zajecie id_z ID #REQUIRED>
  22. <!ATTLIST prowadzenie id_p ID #REQUIRED>
  23. <!ATTLIST prowadzenie id_w IDREF #REQUIRED>
  24. <!ATTLIST prowadzenie id_z IDREF #REQUIRED>
  25.  
  26. <!ELEMENT baza (wykladowcy,zajecia,prowadzenie_zaj)>
  27. ]>
  28.  
  29. <baza>
  30. <wykladowcy>
  31. <wykladowca id_w="W1">
  32. <imie>Anna</imie>
  33. <nazwisko> Kowalska </nazwisko>
  34. </wykladowca>
  35. </wykladowcy>
  36.  
  37. <zajecia>
  38. <zajecie id_z="Z1">
  39. <nazwa>Angielski</nazwa>
  40. </zajecie>
  41. </zajecia>
  42.  
  43. <prowadzenie_zaj>
  44. <prowadzenie id_p="P1" id_w="W1" id_z="Z2">
  45. <ile>30h</ile>
  46. </prowadzenie>
  47. </prowadzenie_zaj>
  48.  
  49. </baza>
  50.  
  51.  
  52. ====================XSL===================
  53. <?xml version="1.0" encoding="UTF-8"?>
  54. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  55.  
  56. <xsl:template match="/">
  57. <html>
  58. <body>
  59. <xsl:apply-templates/>
  60. </body>
  61. </html>
  62. </xsl:template>
  63.  
  64. <xsl:template match="wykladowcy">
  65. <h2>Lista wykladowcow</h2>
  66. <xsl:for-each select="wykladowca">
  67. <xsl:value-of select="@id_w"/>
  68. <xsl:value-of select="imie"/>
  69. <xsl:value-of select="nazwisko"/>
  70. <br />
  71. </xsl:for-each>
  72. </xsl:template>
  73.  
  74. <xsl:template match="zajecia">
  75. <h2>Lista zajec</h2>
  76. <xsl:for-each select="zajecie">
  77. <xsl:value-of select="@id_z"/>
  78. <xsl:value-of select="nazwa"/>
  79. </xsl:for-each>
  80. </xsl:template>
  81.  
  82. <xsl:template match="prowadzenie_zaj">
  83. <h2>Lista prowadzonych zajec</h2>
  84. <xsl:for-each select="prowadzenie">
  85. <xsl:variable name="id_wyk" select="@id_w"/>
  86. <xsl:variable name="id_zaj" select="@id_z"/>
  87. <xsl:value-of select="@id_p"/>
  88. <xsl:value-of select="//wykladowcy/wykladowca[@id_w=$id_wyk]/imie"/>
  89. <xsl:value-of select="//wykladowcy/wykladowca[@id_w=$id_wyk]/nazwisko"/>
  90. <xsl:value-of select="//zajecia/zajecie[@id_z=$id_zaj]/nazwa"/>
  91. <xsl:value-of select="ile"/>
  92. <br />
  93. </xsl:for-each>
  94. </xsl:template>
  95. </xsl:stylesheet>
  96.  
  97. ======================PHP==================
  98. <html>
  99. <body>
  100. <?php
  101. $file = file_get_contents("w.xml");
  102. $baza = simplexml_load_string($file);
  103.  
  104. foreach($baza->wykladowcy[0] as $wykladowcy)
  105. {
  106. echo $wykladowcy->attributes()->id_w;
  107. echo $wykladowcy->imie;
  108. echo $wykladowcy->nazwisko;
  109. echo "<br />";
  110. }
  111. echo "<br />";
  112.  
  113. foreach($baza->zajecia[0] as $zajecia)
  114. {
  115. echo $zajecia->attributes()->id_z;
  116. echo $zajecia->nazwa;
  117. echo "<br />";
  118. }
  119. echo "<br />";
  120.  
  121. foreach($baza->prowadzenie_zaj[0] as $prowadzenie_zaj)
  122. {
  123. foreach($baza->wykladowcy[0] as $wykladowcy)
  124. {
  125. foreach($baza->zajecia[0] as $zajecia)
  126. {
  127. echo $prowadzenie_zaj->attributes()->id_p;
  128. echo $wykladowcy->imie;
  129. echo $wykladowcy->nazwisko;
  130. echo $zajecia->nazwa;
  131. echo "<br />";
  132. }
  133. }
  134. }
  135.  
  136. ?>
  137. <body>
  138. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement