Skocz do zawartości

Zmiana kodowania w locie (uniwersalne rozwiązanie)


k0l3c

Rekomendowane odpowiedzi

Witam, pobieram dane z wielu stron www i na wielu z nich prawdopodobnie jest inne kodowanie lub nie zostało zdefiniowane.

W każdym razie staram się to wyrównać stosując:

    $zmienna= iconv(mb_detect_encoding($zmienna),"UTF-8",$zmienna);

Ale mimo to w bazie danych nadal co jakiś czas pojawiają się krzaczki. (wiele danych jest ok)

W configu od bazy dodałem:

$pl = mysql_query('SET NAMES utf8');

Zmieniłem nawet ręcznie kodowane w phpMyAdmin na utf8_unicode_ci jednak nic to nie dało.

Jak to rozwiązać?

EDIT: To chyba jednak istotne więc "Pobieram dane za pomocą DOM"..

penguins.jpg

Odwiedzaj regularnie mój blog o seo na lukaszt.pl podobno warto ;)

Odnośnik do komentarza
Udostępnij na innych stronach

Nie wiem z jakich to stron ściągasz dane ale praktycznie 99,99% stron www w internecie ma określony charset przez nagłówek meta w html. Wyciągając charset z nagłówka możesz dokonać przekodowania.

Odnośnik do komentarza
Udostępnij na innych stronach

Na początek wykorzystaj przeglądarkę aby ustalić kodowanie strony np. opera 12: Opera -> Strona -> Kodowanie znaków -> testy. Nie zawsze nagłowek jest jednoznaczny z zawartością strony. Nagłowek określa tylko kodowanie z jakim przeglądarka powinna interpretować treść.

Gdy już ustalisz konkretne kodowanie zamiest iconv wykorzystaj mb_convert_encoding() z pakietu multibyte.

ciągle zakładam multikonta i za to mam BAN

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności