php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 07.08.2004, 19:48  
Gast
 
Beiträge: n/a
Standard [Erledigt] PHP und XML/XSL -> HTML -> Darstellungsfehler

Hallo allerseits!

Also, mein Problem ist folgendes:

Ich habe eine XML und eine XSL, die, wie man nicht anders erwartet, gepaart eine wunderbar schöne (genau wie ich es will) HTML-Seite erstellen. So, soweit, so gut.

Nun habe ich jedoch für diese eine XML Datei noch mehr als nur ein Stylesheet und möchte demensprechend das Stylesheet vom User auswählen lassen. Schlaues ich ( ) googlet natürlich erstmal nach einer (PHP-) Lösung für das ganze. Dies hätte auch den schönen Nebeneffekt, dass der User gar nicht meine XML zu sehen bekommt, sondern nur das Endprodukt: HTML. So.
Jedenfalls habe ich nach etwas suchen im Web (und es gibt ja reichlich zu PHP und XML/XSL(T)) etwas gefunden und aus mehreren Scripten zusammenge-copy-n-pastet. Und siehe da, es funktioniert sogar.

Wo ist das Problem?

Das Problem ist sehr merkwürdig, denn, es wir zwar korrekter HTML-Code von PHP erzeugt.....[Weiter unten könnt Ihr das Script mal ansehn, ist echt kurz].. Leider aber sieht die Ausgabe nicht so aus wie wenn ich XML und XSL direkt verwende, allein, ohne PHP. Wieso kann ich mir nicht erklären, alsoposte ich. Den Unterschied könnt Ihr auf folgenden beiden Links bewundern. OK, Ich benutze UTF-8 und ja, das ist Japanisch. Dennoch, die Sprache des ganzen sollte nicht das Layout beeinflussen.

Vielen Dank für Eure Hilfe, hier die Links:

www.hiroki.de/jouyou.xml
und das durch PHP verunstaltete
www.hiroki.de/jouyou.php

Ich habe auch schon überlegt ob es an meinem Browser liegt? Weil bei XML/XSL direkt, übersetzt ja der Browser das ganze. Naja, ich benutze (ich lebe unter Linux) Mozilla 1.7. Vielleicht könntet Ihr es auch mal mit verschiedenen Browsern probieren? Ich benutze PHP 5.0.0 auf meinem Rechner (gleiches Prob), aber 4.3.* auf dem Webserver.
Danke!

Und hier das Mini-PHP-Script...(jouyou.php)

Code:
<?php
header("Content-Type: text/html; charset=utf-8");

$xh = xslt_create();
$result = xslt_process($xh, 'jouyou.xml', 'jouyou.xsl');
xslt_free($xh);

print $result;
?>
Also, nochmal vielen Dank im Voraus für Eure Hilfe.

Gruß,

- hiroki -

PS:
Also, vielleicht wäre es nützlich wenn ich beschreibe worin die/meine Darstellungsfehler bestehen:
- Die Tabelle nimmt 100% der Breite ein, sollte nicht sein [vgl. reine XML/XSL-Version]
- obwohl innerhalb der Tabelle (z.B. bei Nelson/Learner/Number) eine kleine Tabelle eingebettet ist, und Nelson etc mit verschiedenen "<tr>" Tags versehen sind, erscheinen sie teilweise in derselben Zeile.. das ist mehr als merkwürdig!
Naja, und noch weitere Sachen. Z.B.
- die Mini-Übersicht mit den Vielen Zeichen sollte nur 25% der Breite einnehmen, steht auch so im HTML-Code, nimmt aber imme 100% ein. grmbl.

Ach ja, ich habe dasselbe nochmal mit einem anderen XML-XSL-Paar probiert. Da funktioniert es. Vielleicht liegt es also wirklich am Mozilla. Wäre gut wenn ich wenigstens wüste ob das Problem nur bei mir auftritt, oder auch bei anderen. Und dann auch welcher Browser und OS.. Damit ich wissen kann ob es an Mozilla liegt oder nur Mozilla unter Linux. Oder ob auch der IE das nicht richtig macht. Dann kann man die Fehlerquelle eingrenzen. Vielleicht scheitert es auch an der Über-größe des XML?? Vielleicht ist PHP bzw der Browser damit überlastet? Na gut, dann würde aber auch pures XML-XSL zum selben Fehler führen.. Aaaargh, Hilfe Neutral
Ach ja, wenn jemand die XSL haben will:

www.hiroki.de/jouyou.xsl

Zwischenmeldung:

Ich habe mal die alte Windows-Mühle meiner Eltern bemüht, und siehe Da, im Mozilla UND im IE unter Windows sind die selben Darstellungsfehler. Also kann es eigentlich nicht mehr an der Client-Seite liegen, sondern am Server... Also PHP...

hiroki
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 07.08.2004, 20:06  
Erfahrener Benutzer
 
Registriert seit: 19.06.2004
Beiträge: 665
konsti
Standard

was sagt denn in deiner xsl datei der * in der table aus?
<table border="0" cellpadding="0" width="*">
und wieso japanisch mit utf-8? hab ich ja noch nie gehört...
konsti ist offline   Mit Zitat antworten
Alt 07.08.2004, 20:08  
Gast
 
Beiträge: n/a
Standard

Das * wird in Framesets dazu gebraucht bzw. benötigt um die Breite des Framesets an die Browserbreite anzupassen. Dass das bei Tabellen auch möglich ist, ist mir neu (geht wahrscheinlich auch nciht).
  Mit Zitat antworten
Alt 07.08.2004, 20:31  
Gast
 
Beiträge: n/a
Standard

Hallo!

Danke für Eure Antworten, aber daran liegt es definitiv nicht.
Erstens habe ich es gerade rausgenommen und es die Ausgabe ist immernoch unterschiedlich
Zweitens macht es auch keinen Sinn, denn dann müsste ja (weil ich für beides dasselbe Stylesheet verwende) auch kein Darstellungsunterschied vorhanden sein....

Warte also noch weiter auf eine Lösung des Problems :-/

Gruß,

hiroki
  Mit Zitat antworten
Alt 07.08.2004, 21:13  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 2.150
Guradia befindet sich auf einem aufstrebenden Ast
Standard

Einen Unterschied gibt es:

Die "InBrowser"-Combi aus XML/XSL ist sozusagen fix und fertig

Die PHP-Version ist als ergebnis hingegen pures HTML, dem allerdings ein <!DOCTYPE> fehlt (jag es mal durch den Validator!)


Habe leider mit XSL noch wenig Erfahrung. Ausserdem interessiert mich das Projekt ^^. Würde gerne mal die Quellen sehen und damit arbeiten.
EDIT : Der Wunsch ist ja recht einfach zu erfüllen *d'oh* ^^ einfach zugreifen..
Guradia ist offline   Mit Zitat antworten
Alt 07.08.2004, 21:34  
Gast
 
Beiträge: n/a
Standard

Hallo!

Erfolgsmeldung....Fast.
Ich habe bemerkt, dass ich an zwei Stellen nicht ganz standardkonformes HTML im XSL verfasst. Das hat anscheinend bei PHP etwas anderes bewirkt als direkt im Browser (was ich allerdings immernoch nicht so ganz verstehe, denn rein theoretisch müssten es dieselben Ergebnisse sein, denn das Ergebnis der Transformation nach XSL sollte dasgleiche sein, das ist ja unabhängig von welcher Software das kommt). Nun gut, es gibt nur noch einen kleinen Unterschied bei der Darstellung, der mich jetzt aber nicht mehr so sehr stört, das gröbste ist behoben. Danke nochmal für Eure Hilfe, Euren guten Willen, auch wenn's nicht an dem "width" lag.

@Guradia:

Hi!

Dich interessiert das Projekt? Wie kommts? Auch fleißig Japanisch-Lernender? Hehe. Es gibt ja schon so einige Seiten mit Listen und sogar Beispielwörtern zu den Jouyou-Kanjis. Jedoch wollte ich zusätzlich auch noch Beispielsätze und (!) japanische Sprichwörter einbauen. hehe. Das Projekt habe ich letzte Woche begonnen. Viel Zeit ist draufgegangen für das Design des XML-Dokuments. Und im Nachhinein musste ich immernoch kleine Sachen nachändern, sowas kostet Zeit, vor allem wenn man schon vieles eingegeben hat *seufz*. Und ich werde noch etwas ändern, hehe. Ist mir heute aufgefallen, seufz.
Naja, Zu den Sourcen hast Du ja Zugang.

Gruß,

hiroki
  Mit Zitat antworten
Alt 07.08.2004, 21:51  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 2.150
Guradia befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von hirokisama
Erfolgsmeldung....Fast.
Ich habe bemerkt, dass ich an zwei Stellen nicht ganz standardkonformes HTML im XSL verfasst.
Sag ich ja ;P

Doctype drüber, muss auch noch sein ...

Zitat:
Zitat von hirokisama
Dich interessiert das Projekt? Wie kommts? Auch fleißig Japanisch-Lernender? Hehe.
Meine Signatur könnte dafür einen kleinen Beweis liefern ^^

Zitat:
Zitat von hirokisama
Viel Zeit ist draufgegangen für das Design des XML-Dokuments. Und im Nachhinein musste ich immernoch kleine Sachen nachändern, sowas kostet Zeit, vor allem wenn man schon vieles eingegeben hat *seufz*. Und ich werde noch etwas ändern, hehe. Ist mir heute aufgefallen, seufz.
XML als Format zur alleinigen SPeicherung ... besonders im Entwicklungsprozess ... *hmm* .. scheiss idee ,wenn du mich fragst ...

Seit MySQL 4.1.x ist dort ja komplett Unicode möglich ... muss man aber erstmal haben .. genauso, wie man erstmal PHP dazu bekommen muss, damit richtig zu arbeiten ^^ (ist mir noch nie gelungen ...)
Guradia ist offline   Mit Zitat antworten
Alt 07.08.2004, 21:58  
Gast
 
Beiträge: n/a
Standard

hm, joar.. danke für den tipp [jaja, neue rechtschreibung], aber ich hab die fehler ohne validator gefunden °°

und.. echt? miese idee? wieso? ich find xml eigentlich ganz gut.... vor allem für solche sachen wie "furigana" etc eignet sich meiner meinung nach ne datenbank überhaupt nicht. klar, irgendwie kann man das schon hinbasteln, aber gesund sieht das ganze dann glaube ich nicht mehr aus. es sei denn du könntest mir mal einen datenbank-entwurf liefern, der mir gefallen würde.. oder besser gesagt: vor allem das erfüllt, das mein xml bisher kann °° wäre ich sehr dankbar. am anfang wollte ich es auch per DB lösen... aber so ganz klar war mir das nicht. per XML hatte ich die struktur in 30 minuten entworfen, ok, ein paar nachkorrekturen, aber.... so wie es ist....scheint es jetzt zu klappen. außerdem wollte ich XML wegen der möglichkeit es einfach weiterzugeben falls nötig. etc. naja, aber bei XML fühle ich mich wohler als bei datenbanken. hast du evtl. nen guten vorschlag wie ich das per db besser oder gleich gut realisiere wie xml? wieso sollte ne db viel besser sein?

greetz,

hiroki

PS: ich hab es jetzt nochmal durch den Validator gejagt. oioi.. da tauchen ja fehlermeldungen auf, von denen wusste ich gar nicht, dass es die gibt. sind aber ganz merkwürdige sachen. kann es sein, dass der nicht mit utf-8 zurechtkommt? auch wenn er es korrekt erkennt? denn mitten in einem bezeichner (bei "style" im "a"-Tag) soll da ein fehler sein. versteh ich nich so ganz... seufz.
  Mit Zitat antworten
Alt 07.08.2004, 22:10  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 2.150
Guradia befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von hirokisama
und.. echt? miese idee? wieso? ich find xml eigentlich ganz gut
XML ist in keiner Form schlecht. Aber die Datei ist schlicht zu fett ^^ .. für das Betrachten übers Web ist das einfach nicht optimal. Als Austauschformat hingegen sehr wohl.

Zitat:
Zitat von hirokisama
.... vor allem für solche sachen wie "furigana" etc eignet sich meiner meinung nach ne datenbank überhaupt nicht.
Kommt drauf an, wie du es gelöst hast.
Selbst erfunden? .. kann sinnvoll im zusammenhang mit XSL/XSLT sein ... grundsätzlich:

http://www.w3.org/TR/ruby/ gibts das schon.

Wie ich das in einer DB lösen würde ... keinen Schimmer, dafür müsst eich mich näher mit deinern Daten befassen, was ich aktuell nicht kann ^^

Datenbank-Design ist allerdings eines meiner Steckenpferde .. irgendwie hinbekommen würde ich das wohl ... *Hmm*
Guradia ist offline   Mit Zitat antworten
Alt 07.08.2004, 22:27  
Gast
 
Beiträge: n/a
Standard

hi!

hey danke für den link zu ruby! das hatte ich zwar schon einmal gesehen, aber vollkommen vergessen, dass es das gibt! yuhuuuu. haha.
und, naja, das furigana wollte ich gerade.. exakt genauso lösen. gut, dann übernehm ich das einfach so
im moment habe ich die lesung als tooltip drübergelegt.

danke danke danke

und, hey, ja, ich hab XML lieber als DBs weil ich in sachen DB-entwurf auch so manche schwächen hab

nun gut. ich bleib jetzt einfach mal bei XML. und wenn ich irgendwann verzweifle und es doch in einer DB haben will, dann sollte es nicht zu schwer sein ein tranformations-script zu verfassen, das mir alles in eine DB haut. hehe. von daher. bleibe ich erstmal dabei. danke.

gruß,

hiroki

PS: wie weit bist du denn mit japanisch lernen? wenn du mal jouyou-kanji's lernen musst.... oder schon mitten dabei bist, hehe, dann sei dir natürlich meine gerade entstehende seite wärmstens empfohlen
  Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] HTML Mail mit Lücken mitten in den Worten, wie kommt das? DeeFour PHP-Fortgeschrittene 2 29.05.2008 15:47
HTML Klasse ecomeback PHP Tipps 2008 6 31.08.2007 22:32
Variable und komplette HTML Datei chrisonline PHP Tipps 2007 3 24.05.2007 15:30
HTML E-Mail mit Bildern webbi HTML, Usability und Barrierefreiheit 4 27.02.2006 08:57
&amp;amp;amp;lt;if&amp;amp;amp;gt; &amp;amp;amp;lt;/if&amp;amp;amp;gt; in einer HTML Datei fuer Templ PHP-Fortgeschrittene 6 03.11.2005 12:05
mailformular soll html befehle interpretieren djrace PHP Tipps 2005-2 6 20.09.2005 08:59
Ergebnis einer DBabfrage in HTML Dateien Suchen u. anzeigen PHP Tipps 2005-2 0 15.08.2005 22:35
Kontaktformular, welches auf neue html Seite führt PHP Tipps 2005-2 4 20.07.2005 11:21
Daten aus einer HTML Quelltext herraus lesen. PHP Tipps 2005 1 30.05.2005 15:23
HTML Tabellenzeile in Tabelle einfügen? Datenbanken 2 28.01.2005 00:28
IMAP: Bild(er) in HTML Part richtig darstellen PHP-Fortgeschrittene 1 07.10.2004 12:21
{$varname.optelement} mit preg_match aus HTML extrahieren PHP Tipps 2004 0 11.09.2004 04:13
Unterschied HTML und PHP PHP Tipps 2004 4 28.08.2004 19:02
Validitor (HTML 4.01) = Schwachsinn? Filewalker Off-Topic Diskussionen 19 03.08.2004 15:27
[Erledigt] PDF aus HTML erzeugen ? PHP-Fortgeschrittene 2 05.06.2004 02:10

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
html, darstellungsfehler xsl, xml xslt transformation \doctype fehlt\, php xml to html with xsl, html darstellungsfehler, html darstellugsfehler

Alle Zeitangaben in WEZ +2. Es ist jetzt 22:24 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.