webForumDet fria alternativet

Ladda meny ur xml-fil

PHP

9 svar · 372 visningar · startad av Alpha II

Medlem sedan maj 20002 993 inlägg
Frågan#1

Jag behöver hjälp med att läsa en meny ur en xml fil. Jag har aldrig tidigare använt xml-filer och får det inte att fungera. :(

Så här har jag tänkt att xml filen skulle se ut:

<?xml version="1.0" encoding="ISO-8859-1"?>
<root>
	<cat id="1">
		<name>Startsidan</name>
		<mainpage>
			<pagesrc>/contents/pages/startsidan.htm</pagesrc>
			<sidebarsrc></sidebarsrc>
		</mainpage>
	</cat>
	<cat id="2">
		<name>Vad är ProGamerz?</name>
		<mainpage>
			<pagesrc>/contents/pages/vadarprogamerz.htm</pagesrc>
			<sidebarsrc></sidebarsrc>
		</mainpage>
		<subpages>
			<page id="1">
				<title>Vad vi gör</title>
				<pagesrc>/contents/pages/vadvigor.htm</pagesrc>
				<sidebarsrc></sidebarsrc>
			</page>
			<page id="2">
				<title>Crewn</title>
				<pagesrc>/contents/pages/crewn.htm</pagesrc>
				<sidebarsrc></sidebarsrc>
			</page>
		</subpages>
	</cat>
	<cat id="3">
		<name>Information</name>
		<mainpage>
			<pagesrc>/contents/pages/information.htm</pagesrc>
			<sidebarsrc></sidebarsrc>
		</mainpage>
		<subpages>
			<page id="1">
				<title>Regler</title>
				<pagesrc>/contents/pages/regler.htm</pagesrc>
				<sidebarsrc></sidebarsrc>
			</page>
			<page id="2">
				<title>Saker att tänka på innan LAN</title>
				<pagesrc>/contents/pages/forberedelser.htm</pagesrc>
				<sidebarsrc></sidebarsrc>
			</page>
			<page id="3">
				<title>Säkerhet</title>
				<pagesrc>/contents/pages/sakerhet.htm</pagesrc>
				<sidebarsrc></sidebarsrc>
			</page>
		</subpages>
	</cat>
</root>

Sen ska menyn skrivas ut ungefär så här:


	<ul>
		<li><a href="page.php?cat=1">Startsidan</a></li>
	</ul>

	<ul>
		<li><a href="page.php?cat=2">Vad är Progamerz?</a></li>
		<ul>
			<li><a href="page.php?cat=2&page=1">Vad vi gör</a></li>
			<li><a href="page.php?cat=2&page=2">Crewn</a></li>
		</ul>
	</ul>

	<ul>
		<li><a href="page.php?cat=3">Information</a></li>
		<ul>
			<li><a href="page.php?cat=3&page=1">Regler</a></li>
			<li><a href="page.php?cat=3&page=2">Saker att tänka på innan LAN</a></li>
			<li><a href="page.php?cat=3&page=3">Säkerhet</a></li>
		</ul>
	</ul>

Men hur läser jag av xml-filen utan XMLDOM? :q

Medlem sedan maj 20002 993 inlägg
#2

*hjälp mig* :)

Medlem sedan juni 20008 205 inlägg
#3

Varför ska du läsa in den utan XML-DOM? Det låter våldsamt jobbigt...

Medlem sedan maj 20002 993 inlägg
#4

Som jag har förstått det kör inte PHP med XMLDOM som standard och jag tror inte mitt webhotell har aktiverat det (phpinfo()).

Medlem sedan juli 200352 inlägg
#5

PHP har funktioner för att parsea XML.

Manual och tydliga exempel finns på:
http://www.php.net/manual/en/ref.xml.php

Medlem sedan mars 20025 907 inlägg
#6

phpinfo() skrev:

XML Support active
XML Namespace Support active

Låter ju onekligen som servern har stöd för det.

Medlem sedan maj 20002 993 inlägg
#7

Men när jag testar så får jag ju felmeddelanden om att funktionerna inte existerar! :q Betyder inte det där att det finns stöd för expat?

Medlem sedan juni 20015 009 inlägg
#8

XML Support active och XML Namespace Support active är inte detsamma som XMLDoom väl? Kan inte förklara skillnaden men jag vet att man måste aktivera det sistnämda för att det ska fungera och är det aktiverat så ser man det i phpinfon.

Medlem sedan maj 20002 993 inlägg
#9

Men när mitt webhotell inte har aktiverat det är det väl ganska kört att använda DOM XML. Går det inte att göra samma sak med expat?

Medlem sedan maj 20002 993 inlägg
#10

Jag hittade något som hette domit. Det är en xml-parser som skall likna DOM-XML men skriven i PHP. Tyvärr så får jag ändå inte min meny att fungera. Det verkar vara väldigt krångligt att läsa elementen, eller så är det bara domit som är dåligt.

257 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)