PDA

View Full Version : سوال: عدم نمایش کاراکترها با Encoding صحیح هنگام خوانده شدن از دیتابیس Access



siavashman
چهارشنبه 13 آبان 1388, 00:14 صبح
من کل این فروم رو گشتم و هرکی که سوال کرده یا گفتن سوال مطرح شده یا یه جوابی دادن که اصلا عملی نیست!

سوال: من کدهای زیر رو به وب سایت فایل php اضافه کردم:

<meta content="text/html; charset=utf-8" http-equiv="Content-Type" >

حالا وفتی که دیتا بیس اکسس من (که مجبورم از اکسس استفاده کنم) و البته این مشکل برای مای اس کیو ال هم وجود داره اطلاعات فارسی رو دریافت میکنم به صورت خرچنگ قورباغه و مربع مربع نشون میده.

وقتی که انکودینگ browser خودم رو روی windows-1256 دیدم اطلاعات درست دیده میشن! برای همین هم کد زیر رو به جای بالا نوشتم:

<meta content="text/html; charset=windows-1256" http-equiv="Content-Type" >

انگار نه انگار که کد مینویسم. اصلا حرف آدما نمیفهمه! شوته شوته! در ضمن فایل php هم به utf-8 ذخیره شده.

یکی مشکل من رو حل کنه لطفا. نگید که قبلا مطرح شده. من تمام صفحات رو گشتم و از فرمایشات استفاده کردم و به نتیجه ای نرسیدم.

zoghal
چهارشنبه 13 آبان 1388, 10:24 صبح
دوست عزیز بعید میدونم کل فروم رو گشته باشی به نتیجه نرسیده باشی.

اطلاعات دیتابیس شما به صورت عربی هست. هزار یک مرتبه هم شما

<meta content="text/html; charset=utf-8" http-equiv="Content-Type" >
استفاده کنید. درست نشون نمیده. در اصل این خط به مرورگر می فهمونه که باید به صورت utf متون رو نمایش بده. اما وقتی اصل متون عربی هست . کاری از دست مرور گرتون بر نمیاد.
تو مای اسکیوال با دو خط میتونید کولکشن دیتابیس و جداول رو عوض کنید. اما در اکسس من اطلاعی ندارم

siavashman
چهارشنبه 13 آبان 1388, 19:19 عصر
zoghal جان اگه عربی هم باشه باید با windows-1256 به جای utf-8 درست بشه. ولی مشکل همچنان پابرجاست.

yaqubian
چهارشنبه 13 آبان 1388, 19:35 عصر
دوست عزیز
از این دستور استفاده کنید:

mysql_query("SET NAMES 'utf8'");
موفق باشید

zoghal
پنج شنبه 14 آبان 1388, 00:49 صبح
دوست عزیز اون فقط به مرورگر می فهمونه که متن چه کدینگی هست. که در زمان باز کردن پیج کاربر هی نره انکودینگ رو عوض کنه. همین. ربطی به تبدیل نداره . فقط نمایش اطلاعات هست

siavashman
یک شنبه 17 آبان 1388, 02:56 صبح
حالا یه نکته جالب:

من وقتی با برنامه mysqlquery analizer که یه برنامه برای کوئری گرفتن از مای اس کیو ال هستش کوئری میگیرم اطلاعات به صورت فارسی نمایش داده میشه ولی وقتی از کد معروف set names استفاده میکنم خیلی راحت باید بگم که میشه این: ÓáÇã
خیلی جالبه نه؟!
با اینکه دیتا بیسم به صورت زیره:

default-character-set=utf8
default-collation=utf8_general_ci

مهمترین نکته اینه که بدون set names utf8 درست نمایش میده ولی تو browser درست نمایش نمیده بدون set names

اکسس رو هم هنوز کسی نگفته چی کار کنم

bps20590
چهارشنبه 20 آبان 1388, 19:00 عصر
هنوز كسي پيدانشده جواب بده