Դիտել ողջ տարբերակը : Հայերենը MySQL-ում
Vahagn_IV
29.11.2007, 19:30
Ունենք php script.
$conn = mysql_connect("localhost", 'localhost_001','123456')
or die("bla-bla-bla". mysql_error());
mysql_select_db("db_name");
mysql_query("SET NAMES utf8",$connn);
mysql_query("SET CHARACTER SET utf8",$conn);.
Աղյուսակները ունեն հետևյալ հատկությունները`
charset: utf8
Collation:utf8_general_ci :
Աղյուսակների մեջ ամեն ինչ գրում ու կարդում եմ այդ սկրիպտի միջոցով:
(Չնայած հետևյալը ճիշտ է նաև MySQL-ի visual interface-ների համար:)
Պատասխան էջս սկսվում է
<html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
.....
</html>
Ամեն ինչ լավ աշխատում է ռուսերենի դեպքում: Բայց, երբ գրում եմ հայերեն, բոլոր սիմվոլները դառնում են ????????:
Ընդ որում, ըստ
http://dev.mysql.com/doc/refman/5.0/en/charset-unicode.html
հայերեն և ռուսերեն սիմվոլները զբաղեցնում են 2 բայտ: Նույնիսկ այստեղ տարբերություն չկա: Ի՞նչ անեմ, որ լավ լինի:):
Մի հատ սրանք նայիր, գուցե օգնեն :)
http://www.akumb.am/showpost.php?p=396201&postcount=27
http://www.akumb.am/showthread.php?t=11765
Vahagn_IV
29.11.2007, 19:46
Էղաաաաաաաաաաաաաաաաաավ:
Շնորհակալություն:
Բայց բացատրությունը չեմ կարող ասել: Այսպես ասած էմպիրիկ եղանակ:):
ALTER DATABASE `hhhh` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci
Էղաաաաաաաաաաաաաաաաաավ:
Շնորհակալություն:
Ուրախ եմ։ Խնդրեմ։ :))
Բարևներ.
MySql բազա ունեմ հայերեն տվյալենով, php/html ով ինչպես կարդամ, բայց որ հայերենը ռեալ կարդա:
Ինչքան հնարավոր է արագ պատասխանեք :)
Մերսիներ ;)
քաղաքացի
11.10.2008, 23:15
Ենթադրում եմ, որ բազայում եղած հայերենը utf8_general_ci-ով է մուտքագրված: Այդ դեպքում պետք է անել 2 բան:
PHP կոդում, mysql_query-ով կանչում ենք հետևյալ հարցումները:
mysql_query("SET NAMES utf8");
mysql_query("SET CHARACTER SET utf8");
իսկ HTML-ում head-ի մեջ ավելացնել
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Պետք է նորմալ աշխատի: Եթե հարցեր առաջանան, խնդրեմ:
:hands Անչափ շնորհակալ եմ,
իսկապես ստացվեց :)
artush1984
07.09.2009, 11:39
մի հարց էլ ես ունեմ հայերեն տվյալներ կան MySQL ում իչպես կարդամ C++ ով?
(Visual Studio 2008)
Ավելի ճիշտ կարդալը կարդւմ եմ բայց ֆայլի մեջ հարցական նշաններ է գրում
artush1984
07.09.2009, 18:29
էղավ էլ պետք չի
էղավ էլ պետք չի
Խնդրում եմ նման դեպքերում ձևն էլ գրել, որպեսզի մյուսներն էլ իմանան։
artush1984
07.09.2009, 23:06
կոնկրետ ինչի ձևը?
կոնկրետ ինչի ձևը?
2 գրառում առաջ նկարագրածդ խնդրի։
Gogoliny
10.07.2011, 19:00
MySQL Բազա Մուտքագրածս հայերեն յունիկոդ տեքստը, MySQL բազայից դուրս է գալիս որպես «??????»
չնայած որ փորձել եմ համապատասխանեցնել այս խորհուրդներին՝
http://www.akumb.am/showpost.php?p=396201&postcount=27
http://www.akumb.am/showthread.php?t=11765
http://dev.mysql.com/doc/refman/5.0/en/charset-unicode.html
http://electron-libre.fassnet.net/utf8.php
ի դեպ՝ համապատասխան բոլոր աղուսյակները/դաշտերը ունեն UTF8_general_ci encoding
Բազա ներմուծվող տեքստը (որը ներմուծվում է <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> tag ունեցող էջից) նորմալ ոնց որ կա գնում նստում ա իրա տեղում, որի մասին հավաստիացել եմ phpmyadmin և այլ mysql client ծրագրերով
Սակայն երբ այդ տեքստը կանչվում է (mysqli_fetch_row ֆունկցիայի օգնությամբ, նույն վերոնշյալ tag-ը ունեցող էջից) էկրանին պատկերվում են «????????»-ներ
դուրս հանելու կոդում օգտագործում եմ նաև հետևյալ query-իները
mysqli_query($con,'SET NAMES "utf8"');
mysqli_query($con,"SET CHARACTER SET utf8");
ի դեպ երբ այս SET NAMES "utf8" և SET CHARACTER SET utf8 query-ները հանում եմ տեքստը mysql client-ով բազայում ցուցադրվում է որպես «Õ€Õ¥Õ²Õ«Õ¶Õ¡Õ¯Õ¨», սակայն երբ հարցում եմ կատարում mysqli_fetch_row ֆունկցիայով կայքում նորմալ ցուցադրում է:
Ինչ որ տեղ կարդացել եմ որ բազայում պահելու, այնտեղ ներմուծելու, այնտեղից դուրս հանելու համար առանձին encoding-ներ է պետք սահմանել, և պետք է այդ բոլորը սահմանել որպես UTF8, սակայն վերջին երկուսը չեմ կարողանում գտնել: Հավանաբար պետք է PHP.ini ֆայլում լինի քանի որ PHP-ն է տանող-բերողը: Բայց Այնտեղ ինչ հնարավոր էր ըստ http://electron-libre.fassnet.net/utf8.php կայքի ցուցումների դարձրել եմ UTF8, որը նույնպես խնդիրը չի լուծել:
Այս ամենեը փորձարկվել է Opera, chrome, IE, Firefox բրուզերներում և արդյունքը նույնն է եղել.
soultaker
14.07.2011, 00:34
ի դեպ երբ այս SET NAMES "utf8" և SET CHARACTER SET utf8 query-ները հանում եմ տեքստը mysql client-ով բազայում ցուցադրվում է որպես «Õ€Õ¥Õ²Õ«Õ¶Õ¡Õ¯Õ¨», սակայն երբ հարցում եմ կատարում mysqli_fetch_row ֆունկցիայով կայքում նորմալ ցուցադրում է:
MySQL կլիենտի վրա թքած, կարևորը էջում երևումա, նշանակումա տենցա ճիշտ: Կլիենտը որ ցույց չի տալիս, էտ արդեն իրա մեղքը պիտի որ լինի:
Հետո բացի encoding-ից մի հատ էլ collation կա, կարողա օգնի:
Gogoliny
16.07.2011, 20:38
MySQL կլիենտի վրա թքած, կարևորը էջում երևումա, նշանակումա տենցա ճիշտ: Կլիենտը որ ցույց չի տալիս, էտ արդեն իրա մեղքը պիտի որ լինի:
Եթե թքացծ, բա ո՞նց կառավարեմ բազան, ամեն անգամ մի տող ջնջելու համար պիտի querry գրե՞մ, տենց գործը դժվարանում ա. :(
Ես էլ էի սկզբից տնեց մտածում թե MySQL client-ից ա, բայց երբ մի քանի կլիենտներով փորձեցի ու տեսա, որ արդյունքը լրիվ նույնական էր, հասկացա, որ ոնց որ ես մի ինչ-որ բան էն չեմ անում :think
Ես նույնիսկ փորձել եմ phpmyadmin-ի index-ի էջում <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> սա տեղադրեմ, բայց էլի խնդիրը չվերացավ.
Հետո բացի encoding-ից մի հատ էլ collation կա, կարողա օգնի:
phpmyadmin-ով տվյալ բազայի Operations բաժնում նայեցի դա էլ դրված է utf8_general_ci.
Սկսում եմ կասկածել որ խնդիրը օպերացիոն համակարգն է, որն ինձ մոտ 64 բիթանի Vista է :unsure
Gogoliny
01.08.2011, 00:43
Արդեն մոտ մի ամիս է փորձում եմ բայց չեմ կարողանում ելք գտնեմ, ով հայերեն յունիկոդ MySQL բազաների հետ աշխատանքի փորձ ունի, հավանաբար, պետք է որ հաղթահարած լինի այս խնդիրը, կխնդրեի կիսվել ինֆորմացիայիով եթե ինչ-որ մեկը դա արել է.
MySQL Բազա Մուտքագրածս հայերեն յունիկոդ տեքստը, MySQL բազայից դուրս է գալիս որպես «??????»
չնայած որ փորձել եմ համապատասխանեցնել այս խորհուրդներին՝
http://www.akumb.am/showpost.php?p=396201&postcount=27
http://www.akumb.am/showthread.php?t=11765
http://dev.mysql.com/doc/refman/5.0/en/charset-unicode.html
http://electron-libre.fassnet.net/utf8.php
ի դեպ՝ համապատասխան բոլոր աղուսյակները/դաշտերը ունեն UTF8_general_ci encoding
Բազա ներմուծվող տեքստը (որը ներմուծվում է <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> tag ունեցող էջից) նորմալ ոնց որ կա գնում նստում ա իրա տեղում, որի մասին հավաստիացել եմ phpmyadmin և այլ mysql client ծրագրերով
Սակայն երբ այդ տեքստը կանչվում է (mysqli_fetch_row ֆունկցիայի օգնությամբ, նույն վերոնշյալ tag-ը ունեցող էջից) էկրանին պատկերվում են «????????»-ներ
դուրս հանելու կոդում օգտագործում եմ նաև հետևյալ query-իները
mysqli_query($con,'SET NAMES "utf8"');
mysqli_query($con,"SET CHARACTER SET utf8");
ի դեպ երբ այս SET NAMES "utf8" և SET CHARACTER SET utf8 query-ները հանում եմ տեքստը mysql client-ով բազայում ցուցադրվում է որպես «Õ€Õ¥Õ²Õ«Õ¶Õ¡Õ¯Õ¨», սակայն երբ հարցում եմ կատարում mysqli_fetch_row ֆունկցիայով կայքում նորմալ ցուցադրում է:
Ինչ որ տեղ կարդացել եմ որ բազայում պահելու, այնտեղ ներմուծելու, այնտեղից դուրս հանելու համար առանձին encoding-ներ է պետք սահմանել, և պետք է այդ բոլորը սահմանել որպես UTF8, սակայն վերջին երկուսը չեմ կարողանում գտնել: Հավանաբար պետք է PHP.ini ֆայլում լինի քանի որ PHP-ն է տանող-բերողը: Բայց Այնտեղ ինչ հնարավոր էր ըստ http://electron-libre.fassnet.net/utf8.php կայքի ցուցումների դարձրել եմ UTF8, որը նույնպես խնդիրը չի լուծել:
Այս ամենեը փորձարկվել է Opera, chrome, IE, Firefox բրուզերներում և արդյունքը նույնն է եղել.
Invicble
08.08.2012, 01:35
$db = mysql_connect("localhost","username","123456");
mysql_select_db("phpsite",$db);
mysql_query("SET NAMES 'utf8'");
$result = mysql_query("UPDATE settings SET title='Հայերեն ցանկացած բան' WHERE id='1'");
Ամեն անգամ երբ UPDATE-ի միջոցով բազայում հայերեն ինչ որ բան եմ թարմացնում, Õ‡Õ¥Ö€Õ¸ÕµÕ¡Õ¶ սենց սիմվոլներ են phpmyadmin-ում երևում + դուրս բերելիս: Բայց INSERT անելիս նոռմալ հայերենա բերում, phpmyadmin-ով էլ որ ավելացնում եմ , էլի հայերեն ա բերում, մենակ ափդեյթի ժամանակա տենց անում: Ասեմ որ բազա utf8 gencoding ci-ով եմ սարքել
ARMbrain
08.08.2012, 09:21
$db = mysql_connect("localhost","username","123456");
mysql_select_db("phpsite",$db);
mysql_query("SET NAMES 'utf8'");
$result = mysql_query("UPDATE settings SET title='Հայերեն ցանկացած բան' WHERE id='1'");
Ամեն անգամ երբ UPDATE-ի միջոցով բազայում հայերեն ինչ որ բան եմ թարմացնում, Õ‡Õ¥Ö€Õ¸ÕµÕ¡Õ¶ սենց սիմվոլներ են phpmyadmin-ում երևում + դուրս բերելիս: Բայց INSERT անելիս նոռմալ հայերենա բերում, phpmyadmin-ով էլ որ ավելացնում եմ , էլի հայերեն ա բերում, մենակ ափդեյթի ժամանակա տենց անում: Ասեմ որ բազա utf8 gencoding ci-ով եմ սարքել
Սրանից հետո եթե բազա կսարքես սարքի utf 8 general ci-ով, իսկ utf-8ով update անելու համար ոչթ է օգտագործի mysql_query("SET NAMES 'utf8'")« ես հրամանը այլ mysql_query("SET CHARSET utf8") էսի, մեկել ստուգի թե տվյալ դակումենթը որը որ դու աշխատացնումես ցանկացած խմագրիչով utf-8 encoting նշված է թե ոչ, կարծում եմ այսքանից հետո խնդիրներ չպետք է լինեն...
Invicble
08.08.2012, 11:00
եղավ, մերսի
softsaqo
08.08.2012, 19:24
կամ httpd.conf ֆայլի մեջից ես ջնջի AddDefaultCharset windows-1251 :B
Ել ոչ մի խնդիր չես ունենա տառատեսակների հետ
եթե denwer ա եսա հասցեն C:\WebServers\usr\local\apache\conf :ok