Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [XML]Xml co z błędem
kto$
post
Post #1





Grupa: Zarejestrowani
Postów: 33
Pomógł: 1
Dołączył: 9.05.2010

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


Musze sparsować xmla, który w pierwszych 3-ech linijkach ma tekst:
<br />
<b>blablabla </b>: cos tam cos tam
cos tam cos</b> on line <b>0</b><br />

i parser, w tym przypadku simple xml wywala mi bledy w stylu Extra content at the end of the document in C:\xampp\htdocs on line 4.

Znacie jakies sposoby odczytu z linku xmla z ominięciem tych 3 linijek. Tylko taki xml mam zwracany, innego nie będę mał.
Go to the top of the page
+Quote Post
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Wytnij ten początkowy ciąg.
Mniej więcej w ten sposób
  1. $xml = preg_replace('/^.*<?xml/is','<?xml', $xml);

Pisane z palca ale sprawdź.
Go to the top of the page
+Quote Post
wewior
post
Post #3





Grupa: Zarejestrowani
Postów: 200
Pomógł: 8
Dołączył: 24.09.2003

Ostrzeżenie: (10%)
X----


A nie dasz rady przepuścić tego przez jakiś swój skrypt zanim pójdzie do xmlHttp. Nie podajesz konkretnego linka z którego pobierasz xml tylko podajesz adres pliku .php w którym sobie pobierasz ten content np przez fopen i pomijasz pierwsze 3 linie albo jeśli to nie będzie stały tekst to pomijasz wszystko co jest przed znacznikiem xml. Trochę toporne rozwiązanie ale jak nie masz wpływu na strukturę xml'a to chyba dobre.

Cytat(wookieb @ 14.01.2011, 10:01:11 ) *
  1. $xml = preg_replace('/^.*<?xml/is','<?xml', $xml);

wookieb >> Tylko nie wiem czy kto$ nie pisał o akcji w pliku js, a w tym przypadku musiałby to przepuścić jeszcze przez jakiś skrypt php wcześniej i tak wrzucić Twój kod. Ale może się mylę.
Go to the top of the page
+Quote Post
kto$
post
Post #4





Grupa: Zarejestrowani
Postów: 33
Pomógł: 1
Dołączył: 9.05.2010

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


Dzięki za odpowiedzi. Rozwiązałem problem w jeszcze inny sposób:
  1. $tekst=substr($tekst, strpos($tekst, "<?xml"), strlen($tekst)-1);


pzdr
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: 22.08.2025 - 14:42