PDA

View Full Version : حرفه ای: مشکل فارسی نویسی در MySQL



ahrimaneahurai
شنبه 20 آبان 1391, 11:46 صبح
سلام
من یه برنامه توی اندروید نوشتم که به اینترنت وصل میشه و با php توی MySQL اطلاعات ذخیره می کنه. اما مشکل اینه که توی دیتابیس اگر از خود cpanel اطلاعات وارد کنم درست نمایش داده میشه اما اگر از برنامه اندروید اطلاعات رو بفرستم به صورت ؟؟؟؟ توی MySQL ذخیره مشه.
قبل از کانکت شدن کد زیر زیر رو دارم :

$con = mysql_connect(DB_SERVER, DB_USER, DB_PASSWORD) or die(mysql_error());

mysql_query("SET CHARACTER SET 'utf8'", $con);

mysql_query("SET NAMES 'utf8'", $con);

$db = mysql_select_db(DB_DATABASE) or die(mysql_error());

فیلدهای جداول رو هم utf8_persian_ci گذاشتم و هم utf8_general_ci باز هم نشد. توی دستور Insert قبل از مقادیر N گذاشتم باز هم نشد. قبل از وارد کردن اطلاعات هم از mysql_real_escape_string استفاده می کنم.
Collation جداول هم هم utf8_persian_ci گذاشتم و هم utf8_general_ci باز هم نشد.
خود فایل های php هم انکودینگشون روی utf8 هست و همراه با save bom.
خیلی توی اینترنت گشتم اما همه همین مسابل رو گفته بودن. دقت کنید که من html ندارم که بخوام از تگ meta استفاده کنم.اطلاعات از طریق json با اندروید رد و بدل میشه.
ممنون

MMSHFE
شنبه 20 آبان 1391, 19:08 عصر
فقط SET NAMES utf8 رو اجرا كنيد. اجراي دوتا با هم مشكل داره. ضمناً چون HTML ندارين، محتوايي كه دريافت كردين رو با iconv به يونيكد تبديل كنيد.

ahrimaneahurai
شنبه 20 آبان 1391, 19:24 عصر
ممنون از پاسختون اما مشکل از mysql و php نبود. مشکل این بود که من اطلاعات رو توی اندروید utf نمی کردم و به وب میفرستادم. مشکلم حل شد. ممنون

SokooteShab1
شنبه 21 بهمن 1391, 10:55 صبح
سلام
منم همین مشکل رو دارم می تونم بپرسم که چه جوری باید utf کرد؟؟
آخه من اولین باریه که با MySQL کار میکنم!!
جواب بدید ممنون میشم