Zajmuję się importem danych z excela do bazy danych.
Mam taką importującą metodę:
public function importBulk($file) { throw new DiscoveryException('Podana ścieżka do pliku nie istenieje !'); $excel= new Spreadsheet_Excel_Reader($file); $excel->setOutputEncoding('ISO-8859-2'); $sql= 'INSERT INTO bulk(produkt, bulk) VALUES'; for($i= 2; $i<= $excel->rowcount(); ++$i) { $produkt= $this->code($excel->val($i, 1)); $bulk= $this->code($excel->val($i, 2)); } throw new DiscoveryException('Wystąpił błąd przy imporcie danych Bulk !'); }
i po wpisaniu np. Małopolska ucinało na Ma i tak było z każdym polskim znakiem.
Napisałem do tego metodę:
private function code($string) { 'Ć' => chr(198), 'ę' => chr(234), 'Ę' => chr(202), 'ł' => chr(179), 'Ł' => chr(163), 'ń' => chr(241), 'Ń' => chr(209), 'ó' => chr(243), 'Ó' => chr(211), 'ś' => chr(156), 'Ś' => chr(140), 'ź' => chr(159), 'Ź' => chr(143), 'ż' => chr(191), 'Ż' => chr(175)); }
która rozwiązuje problem z każdym polskim znakiem oprócz ó - tylko ten jeden znak ucina.
Co robić ?