PDA

View Full Version : مبتدی: مشکل در ذخیره کردن اطلاعات فارسی در mysql با Ajax



Javidhb
پنج شنبه 12 خرداد 1390, 17:11 عصر
سلام

از اونجایی که مطمئن بودم که نمیتونم خودم یه کلاس خوب برای کار با Mysql بنویسم، ترجیح دادم برم از یک کلاس آماده استفاده کنم که بعدا با مشکلات امنیتی و غیره مواجه نشم.

یه تفعل به گوگل زدم، ajaxcrud.com (http://www.ajaxcrud.com) رو پیدا کردم، خداییش هم چیزه خوبیه اما وقتی میخوام داده های فارسی رو تو mysql ذخیره کنم به مشکل برمیخورم. مثلا وقتی "سلام" رو ذخیره کنم اینجوری تو بانک اطلاعات میره: "%u0633%u0644%u0627%u0645" :افسرده:

چکار باید بکنم، مشکل از encode نشدن به utf8 ? لطفا راهنماییم کنید :قلب:
البته اولش داده های فارسی رو هم با علامت سوال "؟" نشون میداد که اون رو درست کردم اما این یکی از توانایی من خارجه

:قلب:

Keramatifar
پنج شنبه 12 خرداد 1390, 22:25 عصر
collation دیتابیس روی چی ست شده؟

Javidhb
پنج شنبه 12 خرداد 1390, 23:56 عصر
collation in mysql => utf8_general_ci

با خود php راحت میتونم توی بانک اطلاعاتی داده های فارسی رو ذخیره و بخونم اما وقتی طرف این کلاس که اساس کارش بیشتر ajax تا php رفتم، گیر افتادم.

اگه بخاطر مسائل امنیتی و جلوگیری از مشکلات بعدی نبود خودم با php مینوشتم - - اما امان از بی تجربگی:اشتباه:

راستی اینم کلاسی که استفاده میکنم، یادم رفت تو پست اول بزارم(کلاس ترو تمیزیه):


ajaxcrud.com/download.php (http://www.ajaxcrud.com/download.php)


اولش داده فارسی رو با علامت سوال نشون میداد که کد زیرو اضافه کردم درست شد، اما اینی که داده فارسی رو عجیب غریب تو پایگاه داده ذخیره میکنه رو هرچی سرچ کردم راهی واسش پیدا نکردم


mysql_query("SET NAMES 'UTF8'");
mysql_query("SET character_set_connection = 'utf8'");


با تشکر

ghasemweb
جمعه 13 خرداد 1390, 14:08 عصر
mysql_query("SET NAMES 'UTF8'");
mysql_query("SET character_set_connection = 'utf8'");