Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Generowanie pliku CSV. Polskie znaki w Excelu?
Forum PHP.pl > Forum > PHP
starterrrrr
Witam.

Mam pewien problem z plikiem csv.

Plik generuje tak:

  1. $fp = fopen($path_name_export, "w"); #START
  2.  
  3. while(...) { //kolejny rekord
  4.  
  5. foreach() { //kolejna komorka
  6. $nowe_dane[] = 'dane z bazy...';
  7. }
  8.  
  9. fputcsv($fp, $nowe_dane, ';', '"');
  10. }
  11. fclose($fp);



Wygeneroqwany plik csv w edytorze tekstowym poprawnie się wyświetla, jednka w Excelu 2013 nie ma Polskich liter. co jest nie tak?
Szukałem rozwiązań na necie, ale jest tego ogromna ilosc i żadne rozwiązanie nie pomaga.
Pyton_000
Przy otwieraniu w Excel zapewne musisz użyć kodowania UTF-8
starterrrrr
Cytat(Pyton_000 @ 8.07.2015, 11:03:28 ) *
Przy otwieraniu w Excel zapewne musisz użyć kodowania UTF-8

ok. w Excelu mozna to zrobić poprzez zaimportowanie Danych z pliku tekstowego. Pokombinuje z tym.



mam też problem z cudzysłowiem w wygenerowanym pliku. php poprzez funkcje fputcsv() widze, że dodaje slash przed cudzysłowiem \" ale excel i tak gubi wtedy układ kolumn. Czy jedynym wyjsciem jest usunięcie cudzysłowia z exportowanych danych?
Turson
Skorzystaj z PHPExcel, bo zabawa z tymi cudzysłowiami to rzeźbienie po prostu wink.gif
starterrrrr
Cytat(Turson @ 8.07.2015, 11:23:20 ) *
Skorzystaj z PHPExcel, bo zabawa z tymi cudzysłowiami to rzeźbienie po prostu wink.gif

Dzieki zerkne na to.
Ale jaka jest zasada, ogólnie to nie może być żadnych cudzysłowiów w danej komórce? Gorzej, że w niektórych sa dane w formacie html i jest sporo cudzyslowiow. Widze, że fputcsv() dorzucił przed każdym slasch, ale excel nic sobie z tym nie zrobił smile.gif

Czy może zamieniać wszystkie cudzysłowia na apostrofy i tyle? Raczej nie powinno popsuć kodu html?
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.