Zmena kodovania MySQL databazy

Programovacie jazyky, rady, poradňa...
Majo053
Medium Expert
Medium Expert
Používateľov profilový obrázok
Príspevky: 126
Registrovaný: 14 aug 2006, 13:39
Bydlisko: Somewhere

Zmena kodovania MySQL databazy

Príspevok od používateľa Majo053 »

Caute ako sa da v phpmy admin zmenit kodovanie z utf-8 na cp 1250? Lebo na hostingu som mal moznost vytvorit iba v tomto kodovani.

Dakujem
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

tu
Prílohy
Bez-názvu-1.gif
(68.47 KiB) 556 stiahnutí
Majo053
Medium Expert
Medium Expert
Používateľov profilový obrázok
Príspevky: 126
Registrovaný: 14 aug 2006, 13:39
Bydlisko: Somewhere

Príspevok od používateľa Majo053 »

audiotrack napísal:tu
Ahoj dakujem za odpoved!

To je nejake porovnavanie ci co to som zmenil ale ostalo stale UTF-8 co nechcem. Ja sa v tom nevyznam vobec cize tazko ti poviem ale z podpory mi napisali, ze mam pouzit prikaz:

Kód: Vybrať všetko

ALTER DATABASE databaza DEFAULT CHARACTER SET kodovanie;
tak som dal:

Kód: Vybrať všetko

ALTER DATABASE do1734601db DEFAULT CHARACTER SET cp1250_uni;
...a pise chybu:

Kód: Vybrať všetko

Chyba

SQL dotaz:

ALTER DATABASE do1734601db DEFAULT CHARACTER SET cp1250_uni;

MySQL hlási: Dokumentácia
#1115 - Unknown character set: 'cp1250_uni' 
Skusal som rozne nazvy kodovani ale nejde to.

Tuto to potrebujem zrejme zmenit:
Prílohy
Untitled.jpg
Holubar
Darca
Darca
Používateľov profilový obrázok
Príspevky: 3894
Registrovaný: 24 feb 2005, 21:26
Bydlisko: Senec
Kontaktovať používateľa:

Re: Zmena kodovania MySQL databazy

Príspevok od používateľa Holubar »

Ake kodovanie mam pouzit, resp, ako docielim, aby som do databazy mohol ukladat slovenske mena s diakritikou? Teraz mam na serveri nastavene kodovanie tabuliek na utf8_general_ci, no ked spustim registraciu a dam tam meno alebo priezvisko s diakritikou, tak ulozi namiesto Dušan iba Du alebo Žaneta neulozi vobec. Ako to osetrit?

Skusil som toto

Kód: Vybrať všetko

$krstne_meno = mb_convert_encoding($krstne_meno, "UTF-8");
$priezvisko = mb_convert_encoding($priezvisko, "UTF-8");
no potom ulozilo slová Dušačko Ročkojavský takto - Dušaèko Roèkojavský
gwixt
Addict
Addict
Používateľov profilový obrázok
Príspevky: 3912
Registrovaný: 24 sep 2005, 16:50
Bydlisko: Trash-Can

Re: Zmena kodovania MySQL databazy

Príspevok od používateľa gwixt »

utf8 plne podporuje diakritiku (a nielen to) .. takze uz do databazy musis posielat nieco zle ... mas PHP zdrojaky tiez v utf8??
Holubar
Darca
Darca
Používateľov profilový obrázok
Príspevky: 3894
Registrovaný: 24 feb 2005, 21:26
Bydlisko: Senec
Kontaktovať používateľa:

Re: Zmena kodovania MySQL databazy

Príspevok od používateľa Holubar »

mas pravdu. Vsetky zdrojaky su kodovane v cp1250 :slap:
este ze len zacinam :)

//autoeditácia príspevku (26 Feb 2010, 11:28)
Mam este jeden problem s kodovanim. Vsetky zdrojaky som prehodil na utf8, tabulky v databaze vytvaram cez php skripty, v ktorych pri kazdej tabulke uvadzam tieto riadky:

Kód: Vybrať všetko

		  DEFAULT CHARACTER SET = UTF8
		  COLLATE = utf8_general_ci';
Problem je iba na localhoste, ked pozeram databazu cez phpmyadmin. Cize regnem konto, vlozim udaje s diakritikou cez skripty. Ak ich potom taham do browsera, vsetko je v poriadku.
No ak sa pozriem na databazu cez phpmyadmin tak namiesto diakritiky zobrazuje divne znaky. A ak cez phpmyadmin prepisem divne znaky za diakritiku, potom mi tieto zaznamy nezobrazuje spravne cez browser.

Na serveri taky problem nemam, tam sa to zobrazuje spravne aj v phpmyadmin. Cize bude asi chyba niekde v tom mojom. Kde je tam nejake nastavenie kodovania?
gwixt
Addict
Addict
Používateľov profilový obrázok
Príspevky: 3912
Registrovaný: 24 sep 2005, 16:50
Bydlisko: Trash-Can

Re: Zmena kodovania MySQL databazy

Príspevok od používateľa gwixt »

hned na uvodnej stranke by mohol byt na vyber MySQL connection collation .. taky kombobox
skus to
Holubar
Darca
Darca
Používateľov profilový obrázok
Príspevky: 3894
Registrovaný: 24 feb 2005, 21:26
Bydlisko: Senec
Kontaktovať používateľa:

Re: Zmena kodovania MySQL databazy

Príspevok od používateľa Holubar »

v prilohe davam screen uvodnej stranky. Teda ak myslime obaja na rovnaku uvodnu stranku
Prílohy
phpmyadmin.png
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Re: Zmena kodovania MySQL databazy

Príspevok od používateľa chrono »

Pri každej tabuľke sa zobrazuje, aké triedenie tam je použité (a teda aj kódovanie). Ak je tam správne kódovanie a phpmyadmin zobrazuje tie texty nesprávne znamená to, že tá tvoja aplikácia tam nesprávne tie texty vkladá.
Holubar
Darca
Darca
Používateľov profilový obrázok
Príspevky: 3894
Registrovaný: 24 feb 2005, 21:26
Bydlisko: Senec
Kontaktovať používateľa:

Re: Zmena kodovania MySQL databazy

Príspevok od používateľa Holubar »

v phpmyadmin je vsade pri tabulkach utf8, podla mna je chyba v nom, lebo tie iste skripty vkladaju data aj do db na serveri a tam je vsetko ako ma byt.
Aj ked z lokalnej db vytiahnem data, tak su v browseri ok, iba cez phpmyadmin sa zobrazuju zle. Do browsera idu zle data iba v pripade ze ich vlozim priamo cez phpmyadmin
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Re: Zmena kodovania MySQL databazy

Príspevok od používateľa chrono »

Podľa toho, ako sa to správa, tipujem, že tá tvoja aplikácia nenastaví, v akom kódovaní chce s DB komunikovať a teda sa (pri tej lokálnej DB) používa kódovanie windows-1250 (ten skript pošle dáta v kódovaní utf-8 ale DB si myslí, že je to kódovanie windows-1250 tak to prekonvertuje do utf-8, v phpmyadmin sa potom znak s diakritikou zobrazuje ako dva iné znaky).
Holubar
Darca
Darca
Používateľov profilový obrázok
Príspevky: 3894
Registrovaný: 24 feb 2005, 21:26
Bydlisko: Senec
Kontaktovať používateľa:

Re: Zmena kodovania MySQL databazy

Príspevok od používateľa Holubar »

Tak mas predsalen pravdu. Pridal som riadok po pripojeni k db

Kód: Vybrať všetko

mysql_query('SET NAMES utf8');
a uz sa udaje zobrazuju spravne aj cez phpmyadmin. Dik za pomoc
Napísať odpoveď