Supportnet Computer
Planet of Tech

Supportnet / Forum / Webseiten/HTML

XML wird nicht richtig angezeigt





Frage

Hi ich habe in PHP folgende Datei geschrieben und möchte, daß diese wie in XML üblich gegliedert und untereinander angezeigt wird. Bisher werden die Daten zwar richtig ausgegeben, aber eben nur einfach hintereinander. Was muss ich ändern? <? $xml="<?xml version=\"1.0\" encoding=\"ISO-88859-1\"?>"; $xml.="<plugins>"; include ("db.php"); $abfrage = "SELECT * FROM xxx ORDER BY name ASC"; $ergebnis = mysql_query($abfrage); while ($row = mysql_fetch_array($ergebnis)) { $xml.="<name>"; $xml.=$row['name']; $xml.="</name>"; $xml.="<Version>"; $xml.=$row['version']; $xml.="</Version>"; $xml.="<Entwicklerversion>"; $xml.=$row['e_version']; $xml.="</Entwicklerversion>"; $xml.="<Download>"; $xml.=$row['link_e_source']; $xml.="</Download>"; $xml.="<Entwicklerdownload>"; $xml.=$row['link_e_source']; $xml.="</Entwicklerdownload>"; } $xml.="</plugins>"; echo utf8_encode($xml); ?>

Antwort 1 von katy

Hallo Netdeus,

so wie ich das sehe *), hast du kein Stylesheet eingebunden. Ohne Stylesheet hat der Browser aber keinen Anhaltspunkt, wie er die XML-Tags darstellen soll und verarbeitet sie einfach als Inline-Elemente - quasi wie Text.

Näheres hierzu kannst du nachlesen bei SelfHTML.

Einen schönen weißen Wintertag wünscht

katy

*): ich habe natürlich keine Ahnung was sich unter include ("db.php"); verbirgt. Es wäre daher für weitere (Nach-)Fragen besser, nicht das PHP-Script sondern die fertige XML-Datei zu posten.

Antwort 2 von Netdeus

die db.php ist nur die Verbindung zur Datenbank...sonst nichts...

Die fertige Datei kann unter:

www.pc-coaching-rodgau.de/VDR/abfrage_xml.php

gesehen werden...

Antwort 3 von katy

Hallo Netdeus,

da ist wirklich kein Stylesheet. Das müsstest du noch erstellen und einbauen entsprechend der Anleitung auf SelfHTML

katy

Antwort 4 von Netdeus

Habe ich erstellt und ist auch eingebunden...hier die beiden Quelltexte:

<?



$xml="<?xml version=\"1.0\" encoding=\"ISO-88859-1\"?>";
$xml.="<?xml-stylesheet type=\"text/css\" href=\"abfrage.css\" ?>";
$xml.="<plugins>";
include ("db.php");
$abfrage = "SELECT * FROM plugins ORDER BY name ASC";
$ergebnis = mysql_query($abfrage);
while ($row = mysql_fetch_array($ergebnis))
{

$xml.="<name>";
$xml.=$row['name'];
$xml.="</name>";
$xml.="<Version>";
$xml.=$row['version'];
$xml.="</Version>";
$xml.="<Entwicklerversion>";
$xml.=$row['e_version'];
$xml.="</Entwicklerversion>";
$xml.="<Download>";
$xml.=$row['link_e_source'];
$xml.="</Download>";
$xml.="<Entwicklerdownload>";
$xml.=$row['link_e_source'];
$xml.="</Entwicklerdownload>";
}
$xml.="</plugins>";

echo utf8_encode($xml);
?>


und


name {
position:absolute;
top:10px;
left:40px;
background-color:#C0C0C0;
padding:10px;
}

Version {
position:relative;
display:block;
width:600px;
background-color:#808080;
color:#FFFFFF;
font-family:Tahoma,Arial,Helvetica,sans-serif;
font-size:48px;
padding:5px;

Entwicklerversion {
position:relative;
display:block;
width:600px;
background-color:#808080;
color:#FFFFFF;
font-family:Tahoma,Arial,Helvetica,sans-serif;
font-size:48px;
padding:5px;

Download {
position:relative;
display:block;
width:600px;
background-color:#808080;
color:#FFFFFF;
font-family:Tahoma,Arial,Helvetica,sans-serif;
font-size:48px;
padding:5px;

Entwicklerdownload {
position:relative;
display:block;
width:600px;
background-color:#808080;
color:#FFFFFF;
font-family:Tahoma,Arial,Helvetica,sans-serif;
font-size:48px;
padding:5px;

schön wenn meine Ausgabe so aussehen würde:

<plugin>
<name>admin</name>
<Version>0.02</Version>
.
.
<name>lirc</name>
<Version>0.1.2</Version>
.
.
</plugin>

Antwort 5 von katy

Hallo Netdeus,

im Gegensatz zu deinem Code funktioniert ja das SelfHTML-Beispiel bei mir problemlos. Einen Unterschied sehe ich auf Anhieb nur in der fehlenden DTD. Da ich selbst XML noch nie zur direkten Ausgabe verwendet habe, weiß ich jetzt nicht, ob die DTD fürs CSS erforderlich ist. Probier es eben mal aus.

katy

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: