Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Błąd parsowania XML: nieprawidłowo sformowany [Firefox]
puc
post
Post #1





Grupa: Zarejestrowani
Postów: 32
Pomógł: 2
Dołączył: 4.12.2004

Ostrzeżenie: (0%)
-----


Witam,
mam problem z poprawnym wyświetleniem generowanego XML'a (pod IE działa pod FF nie). wyskakuje komunikat jak w temacie. problem jest z nietypowym znakiem (ktoś źle wpisał nazwę przy zapisie do bazy - albo zrobił to celowo). jest jakiś pomysł na ominięcie tego? (próbowałem iconv, mb_convert... i nic). dodam tylko że zestaw znaków alfanumerycznych również raczej nie zadziała (bo musiałbym mieć tablicę znaków wszystkich języków bo jest to platforma "multijęzyczna")

Jakieś pomysły??
Kod błędu jest dokładnie taki:
CODE
Błąd parsowania XML: nieprawidłowo sformowany
Obszar: http://....../
Numer linii: 5, kolumna 17: <name>XXXXXX </name>

czepia się oczywiscie ostatniego znaku w <name>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
batman
post
Post #2





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Jeśli to Ty generujesz pliki XML, to do każdego węzła, w którym występuje tekst, dodawaj CDATA.
Go to the top of the page
+Quote Post
puc
post
Post #3





Grupa: Zarejestrowani
Postów: 32
Pomógł: 2
Dołączył: 4.12.2004

Ostrzeżenie: (0%)
-----


niestety nie pomogło :/
teraz jest komunikat:
CODE
Błąd parsowania XML: nieprawidłowo sformowany
...
Numer linii: 5, kolumna 27:
<name><![CDATA[ XXXXXX  ]]></name>
Go to the top of the page
+Quote Post
batman
post
Post #4





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Skoro CDATA nie dało rady, to jest to problem z kodowaniem. Usuń ten dziwny znaczek, który znajduje się w węźle name i zacznie działać.
Go to the top of the page
+Quote Post
puc
post
Post #5





Grupa: Zarejestrowani
Postów: 32
Pomógł: 2
Dołączył: 4.12.2004

Ostrzeżenie: (0%)
-----


Cytat(batman @ 7.04.2010, 06:54:00 ) *
Skoro CDATA nie dało rady, to jest to problem z kodowaniem. Usuń ten dziwny znaczek, który znajduje się w węźle name i zacznie działać.

to że jest błąd z kodowaniem to ja wiem (IMG:style_emoticons/default/smile.gif) pytanie czy da się 'z automatu' usunąć takie dziwne znaki aby nie powodowały błędów - to są dane zaciągane z bazy a tam userzy je wprowadzają więc takie udziwnienia mogą się niestety pojawiać (specjalnie lub jak w tym opisywanym przypadku - przez nieuwagę) :/
Go to the top of the page
+Quote Post
batman
post
Post #6





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Niestety nie ma na to rady. Musiałbyś znaki te filtrować przed zapisaniem do bazy. Teraz niewiele da się zrobić.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 09:44