![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Nabyłem książkę "XML. Leksykon kieszonkowy" wyd. Helion i chcąc zmienić troche jeden z przykładów do własnych potrzeb mam taki plik:
[xml:1:1f763170b3] ?xml version="1.0" standalone="yes" ?> <?xml-stylesheet type="text/xsl" href="test.xsl" ?> <dane> <plik> <ID>16</ID> <nazwa_org>123.m3u</nazwa_org> <userid>4</userid> <czas>1069200139</czas> <opis>Wprowadź opis pliku</opis> <rozmiar>3340</rozmiar> <rodzaj>0</rodzaj> </plik> <plik> <ID>13</ID> <nazwa_org>logo.jpg</nazwa_org> <userid>4</userid> <czas>1069199825</czas> <opis>To jest opis</opis> <rozmiar>26039</rozmiar> <rodzaj>1</rodzaj> </plik> <plik> <ID>12</ID> <nazwa_org>index.php</nazwa_org> <userid>4</userid> <czas>1069193326</czas> <opis>Wprowadź opis pliku</opis> <rozmiar>44</rozmiar> <rodzaj>1</rodzaj> </plik> ... ... ... </dane>[/xml:1:1f763170b3] i mam do tego taki oto plik XSL: [xml:1:1f763170b3]<?xml version="1.0" ?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Format"> <xsl:template match="dane"> <table border="1" width="800" cellpadding="5" cellspacing="0" bordercolordark="#FFFFFF" bordercolorlight="#C0C0C0"> <tr><th width="2%" bgcolor="#CCCCCC"></th><th width="30%" bgcolor="#CCCCCC">Nazwa pliku</th> <th bgcolor="#CCCCCC" width="15%">Wlasciciel</th><th bgcolor="#CCCCCC" width="15%">Data</th> <th width="15%" bgcolor="#CCCCCC">Rozmiar</th><th width="25%" bgcolor="#CCCCCC">Opis</th></tr> <xsl:for-each select="plik"> <tr> <td align="center" bgcolor="#F5F5F5"><img src="file.gif"/></td> <td align="left" bgcolor="#F5F5F5"><a href="index.php?c=down&id=4"> <xsl:process select="nazwa_org"/> </a></td> <td align="center" bgcolor="#F5F5F5">user</td> <td align="center" bgcolor="#F5F5F5">data</td> <td align="center" bgcolor="#F5F5F5"> <xsl:process select="rozmiar "/></td> <td align="center" bgcolor="#F5F5F5"><a href="jakislink">Pobierz</a></td> </tr> </xsl:for-each> </table> </xsl:template> </xsl:stylesheet>[/xml:1:1f763170b3] Jest to zrobione w oparciu o przykład z ww książki. Ale jak można się domyślic - nie działa: - wyświetla sie nagłowek tabeli i jeden pusty wiersz - nie wiem czy tam powinno być xsl:process czy xsl:value-of, bo żadne nie działa - u mnie na IE5 plik XML sie wyswietla, u innych nie... Co jest? I drugie pytanie: czy dopuszczalne jest umieszczanei w taki sposób HTMLa? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 521 Pomógł: 0 Dołączył: 3.11.2003 Skąd: 3city Ostrzeżenie: (0%) ![]() ![]() |
Cytat 2. I teraz chcem wyjasnic, ze nie jest to post skierowany przeciwko php (poniewaz innego tego rozdzaju jezyki radza sobie na tym polu jeszcze gorzej). A zupelnie odwrotnie uwazam, ze php w tej dziedzinie jest najlepsze (ale nie dosc dobre - prosze zrwocic uwage na to sformuowanie).
Nie przesadzajmy z gloryfikacją php! "Inne tego rodzaju języki" to ASP.NET i Java. Co do pierwszego się nie wypowiadam, bo nie znam. Ale stwierdzenie, że Java radzi sobie w temacie XML gorzej niż php byłoby gigantycznym nadużyciem. Wręcz przeciwnie, w porównaniu z Javą trudno mówić o wsparciu XML ze strony php. Crimson, Xerces, Saxon, Xalan... JAXP, JDOM, JAXB... nawet SAX wymyślono dla Javy. W Javie (pod kątem aplikacji internetowych) wszystko oparte jest na XML - konfiguracja Tomcata, Struts, nawet jest cały framework wokół XSL (Cocoon). A php? Expat i Sablotron. Dobrze przynajmniej że w wersji 5 zamienili Expata na libxml, bo to porażka, żeby jedyny parser nie potrafił walidować nie tylko z XSD, ale nawet z DTD. Nie zrozumcie mnie źle - to nie jest krytyka php. No dobra, jest. php nie jest jeszcze dojrzały i jakby "przegapił" XML. Mamy 2 standardowe biblioteki do PDF i ani jednego dobrego parsera XML. Cytat A co pozwala nam na optymistyczne patrzenie na przod to to, ze php bardzo dynamicznie sie rozwija i wczesniej czy pozniej spelni sie moje (Wasze) mazenie o zadowalajacej "wspolpracy" z XSLT.
Niech najpierw zrobią zadowalającą współpracę x DTD/XSD, a potem wezmą sie za libxslt. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 2.10.2025 - 22:40 |