/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
XML spørgsmål
Fra : Henrik Holm


Dato : 04-04-03 07:21

Hej

Jeg sidder og kikker lidt på XML&PHP. Jeg har en XML fil som ser
således ud:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE StatusFile SYSTEM 'statusfile.dtd'>
<StatusFile date="2003-04-04">
</StatusFile>
Men jeg kan ikke læse den. Hvis jeg så indsætter denne linie

<date1>2003-04-01</date1>
ser jeg den linie. Benytter denne function til at læse XML data:

function characterData($parser, $data)
{
   global $currentTag;
   echo $data;
}

Hvis jeg udskriver $currentTag for jeg STATUSFILE udskrivet. Håber er
nogle der kan hjælpe mig med at løse problemet.

MVH
Henrik

 
 
Andreas Haugstrup Pe~ (04-04-2003)
Kommentar
Fra : Andreas Haugstrup Pe~


Dato : 04-04-03 14:19

Henrik Holm <hfh@fomfrv.dk> wrote in news:4l8q8vcf6ccqdig1d34hnmdc4i7h55qcm7@
4ax.com:

> <?xml version="1.0" encoding="ISO-8859-1" ?>
> <!DOCTYPE StatusFile SYSTEM 'statusfile.dtd'>
> <StatusFile date="2003-04-04">
> </StatusFile>
> Men jeg kan ikke læse den. Hvis jeg så indsætter denne linie
>
> <date1>2003-04-01</date1>
> ser jeg den linie. Benytter denne function til at læse XML data:
>
> function characterData($parser, $data)
> {
> global $currentTag;
> echo $data;
> }
>
> Hvis jeg udskriver $currentTag for jeg STATUSFILE udskrivet. Håber er
> nogle der kan hjælpe mig med at løse problemet.

Du skal se på den funktion du bruger til startElement, ikke til
characterData. Der ligger din information i et array.

--
Andreas
<http://www.solitude.dk>

No1 (04-04-2003)
Kommentar
Fra : No1


Dato : 04-04-03 21:37

> <?xml version="1.0" encoding="ISO-8859-1" ?>
> <!DOCTYPE StatusFile SYSTEM 'statusfile.dtd'>
> <StatusFile date="2003-04-04">

date er en attribut i StatusFile elementet.

Hvilken parser bruger du? Er der en startElement($parser, $name, $attr)
funktion? Den 3. parameter, altså den jeg har kaldt $attr her, modtager en
array med attributter. $attr['date'] bør indeholde '2003-04-04'.

> </StatusFile>
> Men jeg kan ikke læse den. Hvis jeg så indsætter denne linie
>
> <date1>2003-04-01</date1>
> ser jeg den linie. Benytter denne function til at læse XML data:
>
> function characterData($parser, $data)

c-data er kun det der er "inde i" et element, så du vil ikke få attributer
med.



Andreas Haugstrup Pe~ (04-04-2003)
Kommentar
Fra : Andreas Haugstrup Pe~


Dato : 04-04-03 22:03

"No1" <cccccccccc@nonexisting.doooooomain.com> wrote in
news:b6kqdf$jgt$1@sunsite.dk:

> Hvilken parser bruger du? Er der en startElement($parser, $name, $attr)
> funktion? Den 3. parameter, altså den jeg har kaldt $attr her, modtager
> en array med attributter. $attr['date'] bør indeholde '2003-04-04'.

Næh, $attr['DATE'] indeholder '2003-04-04'

--
Andreas
<http://www.solitude.dk>

No1 (05-04-2003)
Kommentar
Fra : No1


Dato : 05-04-03 10:55

> > Hvilken parser bruger du? Er der en startElement($parser, $name, $attr)
> > funktion? Den 3. parameter, altså den jeg har kaldt $attr her, modtager
> > en array med attributter. $attr['date'] bør indeholde '2003-04-04'.
>
> Næh, $attr['DATE'] indeholder '2003-04-04'

Jo, det burde være sådan. Så er det fordi der er case folding på, det er
slået til som default. Det kan slås fra sådan:
xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, false);

XML er case sensitive, så det giver ikke så meget mening med case folding.



Søg
Reklame
Statistik
Spørgsmål : 177502
Tips : 31968
Nyheder : 719565
Indlæg : 6408534
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste