Jump to content
php.lv forumi

latin1 ar latv.burtiem uz utf8, ja glabaats kaa utf8


Valcha

Recommended Posts

Sveiki. Man ir viena datubāze, kurā aiz senas muļķības biju saputrojis kodējumus.

Tātad:

- datubāzes tabulas ir latin1,

- lapas kodējums, no kuras postoju un ierakstīju datus - 1257.

Tagad gribēju pāriet uz utf8 gan db, gan lapā. Tabulu nokonvertēt nav problēmu ar ALTER, bet, pie datu pārmigrēšanas, pavisam sakropļo tekstu.

 

Latin1 tabulās man teksti izskatās šādi: "Kâ vçtrasputna spârni". Tai pašā laikā php vai kas tur ir vienmēr bijis tik gudrs, ka pats izkonvertē uz ekrāna, kā vajag.

 

Kā es varētu loģiski pāriet uz uft-8. Zinu, ka viens no galējiem variantiem ir kaut vai paņemt un ar replace nomainīt dump-ā visus kropļotos burtus. Bet varbūt var kā citādi?

Link to comment
Share on other sites

Laipai iekš meta tega protams ieliec utf-8, pašus failus loģiski arī saglabā utf-8.

Tad nu tā, es mysql SET NAMES utt nekad neesmu izmantojis, jo kas vienam elementāri citam "negluži".

Es parasti ņemu caur php datus no datubāzes, izlaižu caur iconv() un menu atpakaļ. Varbūt nav labākais variants, za to vienmēr strādā/

Link to comment
Share on other sites

Ehh, paldies par atbildēm.

Tā kā man galīgi nebija laika gaidīt, izdarīju sekojoši:

1. Izeksportēju dampu

2. Dampā visus nesmukos simbolus ar php palīdzību norepleisoju pret pareizajiem

3. Krievu tekstus, kuri bija kodā ar entitiydecode >> UTF8 padarīju par korektiem.

4. Noalteroju visas tabulas un db uz uft8.

5. Ieimportēju UTF8 datus datubāzē.

Viss šansē. Paldies, biju gan domājis, ka vāres kā vienkāršāk - nekā :)

Ak jā - pie DB konekcijas tagad lieku SET NAMES UTF-8.

Link to comment
Share on other sites

×
×
  • Create New...