PDA

View Full Version : اشکال در پایگاه داده



shekofeh
دوشنبه 07 تیر 1389, 11:40 صبح
سلام به دوستان.
وقتی در برنامه ام کاربری با حروف فارسی ثبت نام میکند در پایگاه داده حروف فارسی را به صورت †Ø§ درج میکند.از کد :


mysql_query("SET NAMES 'utf8'");





در فایل connect استفاده کردم.اما باز درست نمیشود!
در خود پایگاه داده (mysql) هم utf-8 هست.
چیکار کنم درست شود؟

kimiaaa
دوشنبه 07 تیر 1389, 11:56 صبح
به اين ادرس برو شايد کمکت کنه
http://barnamenevis.org/forum/showthread.php?t=229801&page=2

Reza1607
دوشنبه 07 تیر 1389, 13:03 عصر
سلام به دوستان.
وقتی در برنامه ام کاربری با حروف فارسی ثبت نام میکند در پایگاه داده حروف فارسی را به صورت †Ø§ درج میکند.از کد :


mysql_query("SET NAMES 'utf8'");





در فایل connect استفاده کردم.اما باز درست نمیشود!
در خود پایگاه داده (mysql) هم utf-8 هست.
چیکار کنم درست شود؟


اگه موقع چاپ اطلاعات درست هستن که مشکلی نداره ولی اگه موقع چاپ بازم اطلاعات رو اینجوری †Ø§ نشون داد به احتمال قوی مشکل از این که انکودینگ صفحه رو utf8 انتخاب نکردی
بازم اگر درست نشد ببین COLLATION ديتابيس هم utf8_persian_ci هست یا نه؟

m0h53n
دوشنبه 07 تیر 1389, 13:36 عصر
سلام
اگر در ساخت پایگاه داده ات دقت کنی و به موارد زیر توجه داشته باشی به مشکل بر نمی خوری.

1- ساخت Table در پایگاه داده:



CREATE TABLE `test` (
`id` int(11) NOT NULL auto_increment,
`firstname` varchar(50) collate utf8_persian_ci NOT NULL,
`lastname` varchar(50) collate utf8_persian_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_persian_ci AUTO_INCREMENT=1 ;



2- نمایش اطلاعات پایگاه داده
در تگ های html و در قسمت head کد زیر را حتما وارد کن:
البته من فقط قسمت HTML نمایش اطلاعات را نوشتم اگر در قسمت کد PHP مشکلی داشتی بگو تا اون را هم بنویسم.


<head>
<meta http-equiv="Content-language" content="fa">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>اگر این دو نکته را رعایت کنی، هرگز با مشکل مواجه نمی شی.

walker
سه شنبه 08 تیر 1389, 12:01 عصر
سلام.این مهم نیست که وفتی اطلاعات رو در database میبینی چطوری دیده میشه .مهم اینکه وقتی ازشون استفاده میکنی درست دیده بشن.اگه درست دیده نمیشن اول همونطور که دوستان گفتن page رو utf-8 کن و دوم در database نوع اون field هایی که قراره اطلاعات فارسی نگهداره bin1 بکن.این کارو انجام بدی درست میشه.

shekofeh
چهارشنبه 09 تیر 1389, 15:42 عصر
سلام.این مهم نیست که وفتی اطلاعات رو در database میبینی چطوری دیده میشه .مهم اینکه وقتی ازشون استفاده میکنی درست دیده بشن.اگه درست دیده نمیشن اول همونطور که دوستان گفتن page رو utf-8 کن و دوم در database نوع اون field هایی که قراره اطلاعات فارسی نگهداره bin1 بکن.این کارو انجام بدی درست میشه.
وقتی از اطلاعات استفاده میکنم درست هستند فقط در پایگاه داده بد نمایش میدهند!
شاید برای من مهم نباشد اما طبق اصول که بخواهم پیش بروم باید درست نمایش بدهد!
اگر فیلد Collation را uft-8 قرار بدهم درست میشود اما برای اطلاعات جدید که میخواهد وارد شود نه برای قبلی ها.
راستی میشه کاری کرد که اطلاعات قبلی فارسی درست شود یانه؟