Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 10 odgovora
  • 5.297 pregleda

Najnovija ↓

Konverzja Win1250 - UTF 12.07.2004. u 01:35 · pre 271 mesec #1
Da li postoji neki nacina da iskonvertujem bazu iz Win1250 kodne strane u UTF8.
Mozda nije pitanje na pravom mestu postavljeno, ali sam ga postavio ovde yato sto mi se cini da treba vise od jednog upita da bi se ovo resilo
Re: Konverzja Win1250 - UTF 12.07.2004. u 01:41 · pre 271 mesec #2
Probaj sa nekim boljim text editorom (EmEdit npr.). Otvoriš stranicu u win1250 kodnom rsporedu, pa je snimiš kao utf-8. Može se to riješiti i programski, ako imaš veliki broj fajlova koje treba konvertovati.


(Nisam dobro pročitao pitanje)
Exportuješ bazu u text fajl, pa onda uradiš ovo što sam rekao. Poslije je importuješ.

[Ovu poruku je menjao Not now, John! dana 12.07.2004. u 13:01 GMT]
Potpis
"I'd take the awe of understanding over the awe of ignorance any day."
- Douglas Adams
Re: Konverzja Win1250 - UTF 12.07.2004. u 07:28 · pre 271 mesec #3
Probaj sa REPLACE
Code:
UPDATE ime_tabele SET ime_kolone = 
REPLACE(ime_kolone,znak_koji_treba_zamijeniti,znak_sa_kojim_se_mijenja);

Npr.
Code:
UPDATE posts SET post_text = REPLACE(post_text,"æ","ć");

Re: Konverzja Win1250 - UTF 12.07.2004. u 11:27 · pre 271 mesec #4
OK kontam da se radi by default o mySQL database. Sto se tice UTF i drugih stvari po pitanju "encoding" podrske to je uradjeno sa mysql 4.1 i tamo mozes da se igras sa podesavanjem koji je codepage... e sad prevodjenje iz jedne u drugu je opet problem za sebe... prosta promjena tipa code page nece pomoci probaj napravi tabelu iste strukture sa codepage kako zelis pa onda INSERT ... SELECT query-ja da prebacis podatke.
Re: Konverzja Win1250 - UTF 12.07.2004. u 12:07 · pre 271 mesec #5
Mislim da ovo što je Miloš predložio neće raditi, ali bi mogao pokušati sa nekim brojnim vrijednostima za pojedina slova pomoću escape karaktera (valjda MySQL to podržava). Npr. dok si još uvijek u win1250 kodnom rasporedu, zamijeni sve pojave znaka "ć" znakovima \0304\0207.
Tako nešto. Treba samo da provališ brojne vrijednosti određenih slova u utf-8 kodnom rasporedu.
Potpis
"I'd take the awe of understanding over the awe of ignorance any day."
- Douglas Adams
Re: Konverzja Win1250 - UTF 12.07.2004. u 12:59 · pre 271 mesec #6
Da, u pravu si, ovo sto sam naveo u primjeru nece raditi tj. zamijenice ali ne kako treba...

Moglo bi, eventualno, da se unesu u bazu znakovi čćšđž itd. kroz utf-8 (kao referenca) tj. da se vidi kako te znakove prikazuje recimo phpMyadmin u win-1250 (bice to nesto kao "Â Ã Ä")
Zatim (i dalje u win1250) odraditi nesto kao
UPDATE posts SET post_text = REPLACE(post_text, "Š" ,"Ä");

Kad na kraju predjes u utf-8 trebalo bi da se prikaze kako treba.

Ne sumnjam da je ovo jedan od tezih nacina (moraces nekog da pitas) :D
Re: Konverzja Win1250 - UTF 12.07.2004. u 13:50 · pre 271 mesec #7
ovo sto ste mi odgovorili je mnogo krace i jednostavnije od onoga sto sam zamisljao, moja ideja procitaj svaki slog zameni sve karaktere i upisi slog. Iz tog razloga sam i postavio pitanje ovde, nadajuci se nekom vise php odgovoru, ali sad vidim da je pitanje trebalo da ide u MySQL sobu.

Probacu ovo pa cu vam postovati resenje.
Re: Konverzja Win1250 - UTF 12.07.2004. u 15:43 · pre 271 mesec #8
Mozes iz php da uzmes ceo cadrzaj i promenis sve karaktere pre prikaza

ob_start();
// ovde ide tvoj kod
...
// kraj koda
$contents = ob_get_contents ()
ob_end_clean();
$trans = array(
"Š" => "Š",
"Ž" => "Ž",
"š" => "š",
"ž" => "ž",
"Æ" => "Ć",
"æ" => "ć",
"È" => "Č",
"è" => "č",
"Ð" => "Đ",
"ð" => "đ"
);
$output = strtr ($contents, $trans);
echo $output;

ovo ne moze bez output buffering (procitaj ob_* funkcije iz manuala)
Potpis
Goran Pilipović fka bluesman
Re: Konverzja Win1250 - UTF 12.07.2004. u 15:51 · pre 271 mesec #9
ali gorane, to ne daje utf, već html entitete..

za sve konverzije u okviru PHPa koristite iconv() http://php.net/iconv

a za bazu je najlakše ono što je već predloženo, export u fajl, konverzija u fajlu (da li promenom enkodinga, ili zamenom pojedinačnih slova), i import nazad u bazu..
Potpis
blogče :: unescaped beta
  »
go-paste extenzija
  »
reč dana: backup
  »
bočne koalicije
Re: Konverzja Win1250 - UTF 12.07.2004. u 16:18 · pre 271 mesec #10
Pa ok, znam, nego koliko vidim covek se muci sa onim sto ima trenutno pa je ovo kao "workaround" :-)

Ja sam skapirao da je njemu problem output, ako gresim sorry.
Potpis
Goran Pilipović fka bluesman
Re: Konverzja Win1250 - UTF 14.07.2004. u 00:34 · pre 271 mesec #11
"Nasledio" sam bazu u win1250, prilikom daljeg razvoja, primetio sam da na drugoj masini po;inje da mi u bazu unosi umesto nasih slova &#xxx; neki kod, zatim na tre'oj masini nije ni hteo da mi pokazuje nasa slova, mad je u kodu uredno bilo napisan tag

<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">

kada sam umesto ovoga napisao

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

i pocela su da se pojavljuju nasa slova na svim masina, ali samo u novo nastalom kodu, i podacima, ali ono sto mi je ostalo je stara baza, sa win1250 podacima.

Relativno sam nov u svemu ovome, i nije mi tesko da sam resavam problem, ali ovde nemam pojma sta da radim.

Nasao sam funkciju utf8_encode(), ali dobijam Æ i slicne znake. Zato sam i pitao da li postoji neki nacin da iskonvertujem bazu, da ne bih stalno radio konverziju
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme