Wieshka Posted November 26, 2008 Report Posted November 26, 2008 Problēma tāda, ka veicot eksportu, respektīvi, tiek selectēti dati no MYSQL, kurus eksportēt .CSV failā. Viss strādā smuki, un pamainot regional settings list seperator, excels smuki informāciju saliek pa kollonām. Problēma ir ar encodingu. Ir kādi ierosinājumi, kā to ātrāk/ērtāk/efektīgāk novērst ?
andrisp Posted November 26, 2008 Report Posted November 26, 2008 Un kas tad īsti ir par problēmu ar enkodingiem ?
Wieshka Posted November 26, 2008 Author Report Posted November 26, 2008 (edited) MYSQL > CSV Zvaigznāju iela > ZvaigznÄju iela Nīcgales > NÄ«cgales Edited November 26, 2008 by Wieshka
bubu Posted November 26, 2008 Report Posted November 26, 2008 Izskatās pēc normāla UTF-8 kodējuma. CSV failu verot vaļā nevar norādīt kodējumu? Varbūt BOM headeris sākumā palīdzēs.
andrisp Posted November 26, 2008 Report Posted November 26, 2008 Cik atceros, tad bez BOM simboliem excelis nemācēja utfīgu failu atvērt pareizi.
Wieshka Posted November 26, 2008 Author Report Posted November 26, 2008 Dotajā brīdi nožēloju par jauno office ... pamēģināsim uz sekretāres datora exceli kodējumu pamainīt. Nu mans headers pagaidām ir šāds: header("Pragma: public"); header("Expires: Fri, 23 Jul 1999 01:00:00 GMT"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Cache-Control: private",false); header("Content-Type: application/octet-stream"); header('Content-Disposition: attachment; filename="export.csv"'); header("Content-Transfer-Encoding: binary");
bubu Posted November 26, 2008 Report Posted November 26, 2008 Ne jau par http headeriem mēs runājam. Bet gan par BOM headeri. Trīs baitiem faila sākumā: http://apblog.lv/2007/05/07/utf-8-bom-simb...s-already-sent/ (Visbiežāk izplatītākā kļūdas situācija #2).
Wieshka Posted November 26, 2008 Author Report Posted November 26, 2008 Ne jau par http headeriem mēs runājam. Bet gan par BOM headeri. Trīs baitiem faila sākumā: http://apblog.lv/2007/05/07/utf-8-bom-simb...s-already-sent/ (Visbiežāk izplatītākā kļūdas situācija #2). Paldies, pamēģināšu ...
marcis Posted November 26, 2008 Report Posted November 26, 2008 Microsoft rīkiem vispār ir problēmas ar utf-8, tam pašam outlook`am arī. Tādēļ mail`us un exportus uz exceli vienmēr izlaišu caur iconv() uz windows-1257 vai kādu čarsetu tu vēlies :)
Wieshka Posted November 26, 2008 Author Report Posted November 26, 2008 (edited) Padzenāju šurpu turpu encodingus, arī pašam excel.php uzliku UTF-8 Without BOM. The same joprojām. Izskatās, ka vaina jāsāk meklēt MS excelā ... Intreses pēc jāuzliek openoffice ... ko šis saka par .csv failiem. Otrs variants, kas nāk prātā, scripts, kas Ä aizvieto ar ā ... Edited November 26, 2008 by Wieshka
andrisp Posted November 26, 2008 Report Posted November 26, 2008 Nē, tev vajadzēja pamēģināt pielikt BOM simbolus jau uzģenerētajam csv failam.
Wieshka Posted November 26, 2008 Author Report Posted November 26, 2008 (edited) Netiku nemaz līdz openofficam - browsojot php.lv forumu, atradu tādu online excel veidojumu editgrid.com, importējot .csv failu, viņs tiek galā gan ar encoding, gan sadala smuki pa kollonām. Atliek tikai exportēt uz ierasto .xls un nosūtīt sekretārei. Tik vēl jāizdomā, kas pa vainu, mācību nolūkos ... andrisp, ok pamēģināšu. Edited November 26, 2008 by Wieshka
xPtv45z Posted November 26, 2008 Report Posted November 26, 2008 hmm, ir kāds pamats kāpēc veikt vienu, šo lieko soli - mysql->csv->xls, kaut kādi plusi un tā? Es parasti šādos gadījumos drukāju ārā parastu html tabulu, ko uzdodu par xls failu - excel saprot, var pielikt arī nelielu formatējumu.
andrisp Posted November 26, 2008 Report Posted November 26, 2008 ikspītīvīfourtīfaivzī ;), viņš droši vien izmanto phpmyamdmin, un sekretāre palūdza, lai kaut kādus datus exceļ formātā iedod.
Recommended Posts