[ Príspevkov: 6 ] 
AutorSpráva
Offline

Správca fóra
Správca fóra
fgetcsv() a diakritika

Registrovaný: 08.08.09
Príspevky: 12449
Témy: 39 | 39
NapísalOffline : 28.08.2014 16:57 | fgetcsv() a diakritika

Zdar,

robím načítanie z .csv súboru do databázy a pri načítaní súboru nenačítava znaky s diakritikou.
Čo som urobil, alebo vyskúšal:
  • Uložiť súbor s kódovaním UTF-8
  • mb_convert_encoding()
  • utf8_encode()
  • setlocale()
  • iconv()
  • header('Content-Type: text/html; charset=utf-8');
= bez výsledku.
Ak si nechám cez [c]mb_detect_encoding[/c] vypísať kódovanie reťazcov, vypíše 'UTF-8' a z toho som najviac domotaný.
Ak súbor píšem bez diakritiky, všetko funguje bez problémov. Má s tým niekto skúsenosti?

Pracujem v najnovšej verzií Nette 2.2.3, ak by to niečomu pomohlo.


_________________
always is always wrong
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 13.11.07
Prihlásený: 20.08.16
Príspevky: 1702
Témy: 0 | 0
NapísalOffline : 28.08.2014 17:28 | fgetcsv() a diakritika

A pri spojení s databázou sa DB povie, že sa s ňou bude komunikovať v UTF-8?


Offline

Správca fóra
Správca fóra
fgetcsv() a diakritika

Registrovaný: 08.08.09
Príspevky: 12449
Témy: 39 | 39
Napísal autor témyOffline : 28.08.2014 17:47 | fgetcsv() a diakritika

Nette samé od seba pred komunikáciou s databázovou vrstvou pošle [c]SET NAMES 'utf8'[/c], ak si myslel na toto.
Napríklad 'ľščťžýpáíéúäôň' zo súboru pri výpise na stránke bez žiadnej úpravy vypíše takto '��蝞�p�������' a do databázy sa uloží NULL (možno vina funkcie mb_strlen() ktorá overuje, či je v bunke niečo napísané a ak nie je, uloží NULL)


_________________
always is always wrong
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 13.11.07
Prihlásený: 20.08.16
Príspevky: 1702
Témy: 0 | 0
NapísalOffline : 28.08.2014 20:14 | fgetcsv() a diakritika

Presne tak vyzerá, keď sa pokúsiš text v kódovaní CP1250 zobraziť ako UTF-8.

Mimochodom prehliadač nijako nemení kódovanie odosielaných súborov, o to sa musí postarať aplikácia.


Offline

Správca fóra
Správca fóra
fgetcsv() a diakritika

Registrovaný: 08.08.09
Príspevky: 12449
Témy: 39 | 39
Napísal autor témyOffline : 28.08.2014 20:27 | fgetcsv() a diakritika

Vyzerá že je to vyriešené :applaud:
Celé som to vymazal a napísal odznova s tým, že jediná úprava je na vstupe pri načítaní z .csv súboru:
[c]$csv[0] = iconv('CP1250', 'utf-8//TRANSLIT', $csv[0]);[/c]
Prisahal by som, že iconv som skúšal, ale zrejme v kombinácií s niečím, čo to rozhádzalo - teraz to funguje presne ako má.

Ďakujem :cheer:


_________________
always is always wrong
Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 13.11.07
Prihlásený: 20.08.16
Príspevky: 1702
Témy: 0 | 0
NapísalOffline : 28.08.2014 21:06 | fgetcsv() a diakritika

TRANSLIT je pri UTF-8 kódovaní zbytočné (pretože v UTF-8 môžeš uložiť akýkoľvek znak, zmysel by to malo, ak by si chcel zmeniť kódovanie z UTF-8 na nejaké 8 bitové, v ktorom nie je možné uložiť všetky znaky).


 [ Príspevkov: 6 ] 


fgetcsv() a diakritika



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Diakritika

v Delphi, Visual Basic

1

766

05.05.2009 20:20

programator

V tomto fóre nie sú ďalšie neprečítané témy.

Diakritika

v Redakčné systémy

19

1470

06.05.2007 10:54

p360t

V tomto fóre nie sú ďalšie neprečítané témy.

Diakritika

v HTML, XHTML, XML, CSS

1

504

25.10.2009 20:58

don jebot

V tomto fóre nie sú ďalšie neprečítané témy.

diakritika

v HTML, XHTML, XML, CSS

13

723

01.12.2010 14:18

coldak

V tomto fóre nie sú ďalšie neprečítané témy.

Diakritika

v Databázy

11

1100

30.08.2009 20:30

bmatias

V tomto fóre nie sú ďalšie neprečítané témy.

Diakritika

v Databázy

2

751

30.03.2009 22:22

22adamko

V tomto fóre nie sú ďalšie neprečítané témy.

Diakritika

v HTML, XHTML, XML, CSS

13

824

03.12.2008 14:12

exoomer

V tomto fóre nie sú ďalšie neprečítané témy.

Diakritika

v HTML, XHTML, XML, CSS

6

933

25.04.2007 16:54

p360t

V tomto fóre nie sú ďalšie neprečítané témy.

Diakritika

v Ostatné

8

798

22.10.2010 22:10

Rammstein

V tomto fóre nie sú ďalšie neprečítané témy.

diakritika

v HTML, XHTML, XML, CSS

9

1122

18.08.2010 9:50

locksmith

V tomto fóre nie sú ďalšie neprečítané témy.

diakritika JS

v JavaScript, VBScript, Ajax

15

1152

12.02.2009 16:03

tomco3131

V tomto fóre nie sú ďalšie neprečítané témy.

pokazená diakritika

v Ostatné

2

624

02.08.2011 10:36

irelevant

V tomto fóre nie sú ďalšie neprečítané témy.

Lazarus - diakritika

v Delphi, Visual Basic

6

794

02.01.2014 9:31

BX

V tomto fóre nie sú ďalšie neprečítané témy.

poskodena diakritika

v Databázy

1

553

21.01.2010 1:06

Merlin_sk

V tomto fóre nie sú ďalšie neprečítané témy.

mail() diakritika

v PHP, ASP

14

2270

11.02.2007 21:08

kmsa

V tomto fóre nie sú ďalšie neprečítané témy.

Diakritika help!!!

v Redakčné systémy

10

1315

10.07.2008 18:07

capricorn7



© 2005 - 2024 PCforum, edited by JanoF