[php] Problem z include()

0

Mam problem z funckaj include(). Wszytsko działą niby poprawnie ale są problemy z polskimi znakami. Jeżeli menu jest wywołane funkcją inlude to w menu nie ma polskich liter chociaz kodowanie ustawiono na iso 8859-2 , ale jeszcze w tym samym pliku jest wyświetlany jakis tekst to on ma polskie znaki. Nie rozumie o co tu chodzi moze ktoś wie lub spodkal sie z takim błędem z góry dzekuje

//Nie umiesz czytać? Jak wół stoi przyklejony wątek "PREFIXy - piszcie [JS] lub lub [HTML]" - stosuj się do tego! - M

0

Nie jest to na pewno błąd od strony PHP.
Spradz pliki: czy w nagłówku jest kodowanie, czy znaki są przekonwertowane

0

Zamiast includować to menu - zrób tak:

function charset($string)
{
   $string = strtr($string, "\xA5\x8C\x8F\xB9\x9C\x9F", "\xA1\xA6\xAC\xB1\xB6\xBC");
   return $string;
}

   $plik = @fopen("includowany_plik", "r");
   $plik = @fread($plik, 8192); //rozmiar pliku do 8 kB
   @fclose($plik);

   echo charset($plik);

Funkcja zamieni kodowanie "w locie". Pochodzi z jakiegoś FAQ...

Wskazówka:
Zamiast fread() możesz skorzystać z feof() (i na końcu usunąć linię echo charset($plik);):

 while (!feof($plik))
  {
     $bufor = @fgets($plik, 4096);
     echo charset($bufor);
  }

1 użytkowników online, w tym zalogowanych: 0, gości: 1