Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Różne strony kodowe w jednym pliku., Import z CSV i konwersja.
brajan
post
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 5.03.2004
Skąd: Rzeszów

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


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.

Ten post edytował brajan 7.05.2008, 12:32:25


--------------------
GOT BEER?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
Babcia@Stefa
post
Post #2





Grupa: Zarejestrowani
Postów: 654
Pomógł: 17
Dołączył: 19.03.2006
Skąd: z kosmosu ;)

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


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


--------------------
Środowisko testowe (desktop) - Gedit, lighttpd, sftp, rsync, xfce4-terminal, chromium, firefox4 | System: Gentoo ~x86
O'Neill - serwer WWW @ lighttpd, links, nano, rsyncd, sftpd | System: Debian
Go to the top of the page
+Quote Post
brajan
post
Post #3





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 5.03.2004
Skąd: Rzeszów

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


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

Ten post edytował brajan 15.05.2008, 14:11:06


--------------------
GOT BEER?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 15:13