Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Różne strony kodowe w jednym pliku.
Forum PHP.pl > Forum > PHP
brajan
Witam.
Mam drobny problem z konwersją stringów w różnych stronach kodowych zawartych w jednym pliku. Plik CSV jest exportem z MS SQL'a który to nie obsługuje UTF-8, a co za tym idzie koduje znaki narodowe głównie w Windows-125x.
Do konwersji używam iconv i takiego kodu:

  1. <?php
  2. $zawartosc[10] = (!empty($zawartosc_gr[10])) ? iconv("windows-1250","UTF-8",$zawartosc_gr[10]) : ''; // wersja polska
  3. $zawartosc[22] = (!empty($zawartosc_gr[22])) ? $zawartosc_gr[22] : ''; // wersja angielska
  4. $zawartosc[23] = (!empty($zawartosc_gr[23])) ? iconv("ISO-8859-7","UTF-8",$zawartosc_gr[23]) : ''; // wersja grecka
  5. $zawartosc[24] = (!empty($zawartosc_gr[24])) ? iconv("windows-1252","UTF-8",$zawartosc_gr[24]) : ''; // wersja niemiecka
  6. $zawartosc[25] = (!empty($zawartosc_gr[25])) ? $zawartosc_gr[25] : ''; // wersja czeska - ta sama strona kodowa co polski
  7. $zawartosc[26] = (!empty($zawartosc_gr[26])) ? iconv("CP1251","UTF-8",$zawartosc_gr[26]) : ''; // wersja rosyjska
  8. $zawartosc[27] = (!empty($zawartosc_gr[23])) ? iconv("windows-1252","UTF-8",$zawartosc_gr[27]) : ''; // wersja hiszpanska
  9. ?>


Widok w MS SQL:


Widok w mySQL:


Widok w CMSie:




Dla wersji GR (grecki) i RU (rosyjski) próbowałem już wielu stron kodowych, ale z jakichś powodów nie chce mi tych wszystkich "ślaczków" poprawnie wyświetlić. Czy ja robię coś źle? Może jest jakiś inny działający(!) sposób?

Skrypty php są w 100% w UTF-8. Tak samo jest z mySQL, wszystko ustawione na UTF-8 lecz w bazie lądują jedynie krzaki.

Będę wdzięczny za wszelkie sugestie i inne sposoby konwersji tego cholerstwa.
Babcia@Stefa
Cytat
exportem z MS SQL'a który to nie obsługuje UTF-8, a co za tym idzie koduje znaki narodowe głównie w Windows-125x


To może da się użyć ISO-8859-2 (dla Polski, nie wiem jak dla innych ale napewno iso jest też dla innych)?

Nie jestem pewien, więc nie krzyczeć na mnie haha.gif

Pozdrawiam, Babcia@Stefa
brajan
Cytat(Babcia@Stefa @ 7.05.2008, 18:59:24 ) *
To może da się użyć ISO-8859-2 (dla Polski, nie wiem jak dla innych ale napewno iso jest też dla innych)?

Nie jestem pewien, więc nie krzyczeć na mnie haha.gif

Pozdrawiam, Babcia@Stefa



Owszem są odpowiednie strony kodowe ISO dla tych języków w których moja strona ma działać, ale próbowałeś kiedyś robić stronę wielojęzyczną w różnych stronach kodowych? Do tego jeszcze kodowanie samego kodu w UTF, mysql w UTF, a tekst w 7 wersjach ISO? To poprostu nie ma prawa działać. Koszmar!

Ja mam 7 wersji i pomysł użycia czegokolwiek poza UTF jest poprostu nie brany nawet pod uwagę.


EDIT:
Temat do wora.
Powyższy kod działa jak złoto tylko osoba pisząca soft do exportu zrobiła mi małego psikusa przesuwając całą tablice o jedno pole w przód tak więc konwertowałem nie to co trzeba sciana.gif
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.