Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][XML] simplexml i polskie znaki
Forum PHP.pl > Forum > Przedszkole
BugsBunny
Witam.

Od długiego czasu męczę się z polskimi znakami, a raczej ich brakiem, po wczytaniu z pliku XML.

Zmieniałem już kodowanie wszystkiego na UTF-8 bo simplexml sam zmienia mi format i ciągle nie działa.

Poniżej trochę kodu:
  1. <?php
  2. if(!$xml=simplexml_load_file(LANG_DIR.$lang.'.xml'))
  3.    trigger_error('Error reading XML file',E_USER_ERROR);
  4.  
  5.    $tpl->assign('tmp',$xml->ConnectionError);
  6. ?>


  1. <?xml version="1.0" encoding="iso-8859-2"?>
  2. <errors>
  3.      <ConnectionError>Błąd połączenia z bazą danychĄŚĆŹŻŁÓ</ConnectionError>
  4.      <DbError>Zła baza danych</DbError>
  5. </errors>


Strona kodowana w UTF-8
erix
Cytat
Strona kodowana w UTF-8

Kod
<?xml version="1.0" encoding="iso-8859-2"?>

Nie powiedziałbym. tongue.gif
BugsBunny
po zmianie na UTF-8 dzieje się tak, więc stwierdziłem że lepiej jak jest COŚ niż jak nie ma NIC.

Kod
Warning: simplexml_load_file() [function.simplexml-load-file]: langs/pl.xml:3: parser error : Input is not proper UTF-8, indicate encoding ! Bytes: 0xB9 0x20 0x64 0x61 in D:\Program Files\WebServ\httpd-users\CMS\config.php on line 62

Warning: simplexml_load_file() [function.simplexml-load-file]: <ConnectionError>Błąd połączenia z bazą danychĄŚĆŹŻŁÓ</ConnectionError> in D:\Program Files\WebServ\httpd-users\CMS\config.php on line 62

Warning: simplexml_load_file() [function.simplexml-load-file]: ^ in D:\Program Files\WebServ\httpd-users\CMS\config.php on line 62

Fatal error: Error reading XML file in D:\Program Files\WebServ\httpd-users\CMS\config.php on line 63


Nie da się zrobić, żeby mieć kodowanie ISO i działające polskie znaki z XMLa. Ostatnie oczywiście może zostać UTF-8
erix
Wrzuć w UTF-8, przekonwertuj Gżegżółką i wywal BOM z pliku.
BugsBunny
przecież tu nie działa już wczytanie pliku więc co niby mam konwertować

Wywołanie tego:
  1. <?php
  2. if(!$xml=simplexml_load_file(LANG_DIR.$lang.'.xml'))
  3.    trigger_error('Error reading XML file',E_USER_ERROR);
  4. ?>


powoduje w/w efekt

Naprawdę nikt nie wie co jest źle questionmark.gif
erix
A ten błąd
Cytat
Warning: simplexml_load_file() [function.simplexml-load-file]: langs/pl.xml:3: parser error : Input is not proper UTF-8, indicate encoding ! Bytes: 0xB9 0x20 0x64 0x61 in D:\Program Files\WebServ\httpd-users\CMS\config.php on line 62

?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.