Skocz do zawartości

Baza danych Export do CSV - brak polskich znaków


15 odpowiedzi w tym temacie

#1
Dryżał

    Bywalec

  • Zarejestrowani
  • PipPip
  • 32 postów
Witam.

Eksportuję bazę danych do CSV (przez "Magazyn danych"). Niestety znikają polskie znaki.
Gdy robię export do Excela, antywirus to blokuje.
Macie jakieś pomysły jak sobie z tym poradzić?
Póki co contaowy leszczyk.

#2
motionart

    Doświadczony

  • Zarejestrowani
  • PipPipPip
  • 56 postów
Upenij sie czy na pewno "znikaja" polskie znaki - bo to raczej sie nie moze zdarzyć. Moze jednie jest problem w imporcie/exporcie ze strona kodową?


Wyświetl postUżytkownik Dryżał dnia 20 lipiec 2011 - 10:05 napisał

Witam.

Eksportuję bazę danych do CSV (przez "Magazyn danych"). Niestety znikają polskie znaki.
Gdy robię export do Excela, antywirus to blokuje.
Macie jakieś pomysły jak sobie z tym poradzić?


#3
Dryżał

    Bywalec

  • Zarejestrowani
  • PipPip
  • 32 postów
W ustawieniach mam kodowanie UTF-8.
Niestety znaki znikają.
Wchodząc przez "Magazyn danych" do bazy wszystko jest ok. Gdy wyeksportuję to już w Excelu zamiast Łukasz mam ukasz.
Póki co contaowy leszczyk.

#4
Dryżał

    Bywalec

  • Zarejestrowani
  • PipPip
  • 32 postów
Prawdopodobnie przyczyną jest to, że eksportuje mi na czcionkę Calibri.
Wiecie gdzie mogę zmienić, żeby eksportował na inną czcionkę?
Póki co contaowy leszczyk.

#5
Dryżał

    Bywalec

  • Zarejestrowani
  • PipPip
  • 32 postów
I jak, nikt nie ma pomysłu?
Póki co contaowy leszczyk.

#6
Kamil

    Contao ambassador

  • Administratorzy
  • 680 postów
  • Strona www:zobacz
  • LokalizacjaLidzbark Warminski
A cóż to za twór ten "Magazyn danych"? Zasadniczo cały czas pracuję na wersji angielskiej Contao bez dodatków, więc nie bardzo wiem o czym mówisz :) Jeśli to jakieś rozszerzenie to proszę podaj mi linka, albo chociaż nazwę angielską.
Agencja interaktywna OGIENJANUSZ - diabelsko solidny web development.

#7
Dryżał

    Bywalec

  • Zarejestrowani
  • PipPip
  • 32 postów
[efg] EFG - Magazyn danych
Póki co contaowy leszczyk.

#8
Kamil

    Contao ambassador

  • Administratorzy
  • 680 postów
  • Strona www:zobacz
  • LokalizacjaLidzbark Warminski
Spróbuj tak: otwórz system/modules/efgExcel/EfgExcelExport.php i gdzieś koło lini 65

// Create new PHPExcel object
$objPHPExcel = new PHPExcel();
		
// Set properties
$objPHPExcel->getProperties()->setCreator("TYPOlight Web CMS");
$objPHPExcel->getProperties()->setLastModifiedBy("TYPOlight Web CMS");
$objPHPExcel->getProperties()->setTitle($this->strFormKey);

dodaj

$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial');


co w rezultacie da

// Create new PHPExcel object
$objPHPExcel = new PHPExcel();
		
// Set properties
$objPHPExcel->getDefaultStyle()->getFont()->setName('Arial');
$objPHPExcel->getProperties()->setCreator("TYPOlight Web CMS");
$objPHPExcel->getProperties()->setLastModifiedBy("TYPOlight Web CMS");
$objPHPExcel->getProperties()->setTitle($this->strFormKey);

Agencja interaktywna OGIENJANUSZ - diabelsko solidny web development.

#9
Dryżał

    Bywalec

  • Zarejestrowani
  • PipPip
  • 32 postów
Niestety nie mogę znaleźć pliku EfgExcelExport.php
W ogóle nie mam katalogu system/modules/efgExcel.
Mam tylko system/modules/efg, ale tam nie ma tego pliku.
Patrzyłem też w katalogu /plugins/xls_export, ale też nie ma :/
Póki co contaowy leszczyk.

#10
Kamil

    Contao ambassador

  • Administratorzy
  • 680 postów
  • Strona www:zobacz
  • LokalizacjaLidzbark Warminski
Aaa, bo używasz domyślnego eksportera, ok. Jeśli chcesz wyeksportować do excela 2007 to użyj tego rozszerzenia http://www.contao.or...0000019.en.html

Spróbuj w /plugins/xls_export/xls_export.php zmienić linię 8

define("XLSFILE_DEFAULT_FONTNAME","Albany");

na

define("XLSFILE_DEFAULT_FONTNAME","Arial");

Agencja interaktywna OGIENJANUSZ - diabelsko solidny web development.

#11
Dryżał

    Bywalec

  • Zarejestrowani
  • PipPip
  • 32 postów
Kibel. Czcionka jaka jest w Excelu po wyeksportowaniu to "Calibri".
Póki co contaowy leszczyk.

#12
Dryżał

    Bywalec

  • Zarejestrowani
  • PipPip
  • 32 postów

Wyświetl postUżytkownik Dryżał dnia 22 sierpień 2011 - 07:18 napisał

Kibel. Czcionka jaka jest w Excelu po wyeksportowaniu to "Calibri".


Doszedłem do tego, iż te ustawienie trzeba zmienić w opcjach Excella.
Niestety mimo, że zmieniłem czcionkę i po wyeksportowaniu do Excella mam np. Arial, dalej zjada polskie znaki.
Zauważyłem, że nie zjada "ó". Reszta znika :(
Póki co contaowy leszczyk.

#13
milbau

    Znawca

  • Zarejestrowani
  • PipPipPipPip
  • 105 postów
Witam, podbiję temat bo poszukuję rozwiązania tego problemu.
Sprawdziłem pomysły Kamila, niestety nie pomogło,
Generalnie problem jest w module exportu EFG - do CSV i XML, Podobny problem występuje też w isotope przy drukowaniu faktury do pdf - problemem raczej nie są czcionki, a gdzieś po drodze ucina polskie znaki - czyli nie ma ich wogóle - zostaje jedynie "ó".
Może ktoś rozwiązał problem lub ma na to pomysł?

#14
jelomada

    Nowy na forum

  • Zarejestrowani
  • Pip
  • 1 postów

Wyświetl postUżytkownik milbau dnia 02 styczeń 2012 - 16:54 napisał

Witam, podbiję temat bo poszukuję rozwiązania tego problemu.
Sprawdziłem pomysły Kamila, niestety nie pomogło,
Generalnie problem jest w module exportu EFG - do CSV i XML, Podobny problem występuje też w isotope przy drukowaniu faktury do pdf - problemem raczej nie są czcionki, a gdzieś po drodze ucina polskie znaki - czyli nie ma ich wogóle - zostaje jedynie "ó".
Może ktoś rozwiązał problem lub ma na to pomysł?

Witam,
nie miałem czasu zagłębiać się w temacie, więc rozwiązałem problem w najprostrzy, najszybszy możliwy sposób (przynajmniej wedłóg mnie).

Mimo, iż rozwiązanie nie jest zbyt eleganckie, to postanowiłem napisać, bo jak ktoś nie może innego znaleźć, to lepsze takie niż żadno :)

Do rzeczy:
w pliku system/drivers/DC_Formdata.php jest zmienna blnExportUTF8Decode i ona (niby) determinuje, czy znaki mają być przekonwertowane z utf-8 na CP1252. Mi zmina tej zmiennej na false nie pomogła (nie miełem czasu sprawdzić czemu, więc nadpisałem na sztywno), czyli:
linia: 6570: header('Content-Type: appplication/csv; charset='.($this->blnExportUTF8Decode ? 'utf-8' : 'utf-8'));
linia 6669: $strName = $this->convertEncoding($strName, $GLOBALS['TL_CONFIG']['characterSet'], 'utf-8');
linia 6885: $strVal = $this->convertEncoding($strVal, $GLOBALS['TL_CONFIG']['characterSet'], 'utf-8');

numery linii mogą się różnić w różnych wersjach rozszerzenia.

#15
milbau

    Znawca

  • Zarejestrowani
  • PipPipPipPip
  • 105 postów
Sposób @jelomada działa.

Problem jeszcze występował w przypadku eksportu xls

Razem z EFG – instalowałem xls_export – nie było polskich znaków (ale były już krzaki:) ), wywaliłem to i wrzuciłem ten z postu Kamila:
http://www.contao.or...0000019.en.html

problem był taki sam – więc wystarczy w
system/modules/efgExcel/EfgExcelExport.php

wywalić funkcję utf8_encode – która przerabia nam nagłówki więc ma zostać:

l 85: $objPHPExcel->getActiveSheet()->setCellValue((string)$cell, $header);

i wartości:
L 94: $objPHPExcel->getActiveSheet()->setCellValue($this->getCellTitle($intColCounter) . ($intRowCounter+1), $value);

I teraz to śmiga.

#16
Dryżał

    Bywalec

  • Zarejestrowani
  • PipPip
  • 32 postów
Dzięki wielkie. Zrobiłem według porad @jelomada i @milbau
Nareszcie działa :)
Póki co contaowy leszczyk.





Użytkownicy przeglądający ten temat: 1

0 użytkowników, 1 gości, 0 anonimowych