کمک - شناساندن کرکترهای فارسی

ramin006

Member
چطور میشه به یه سیستم کرکترهای فارسی رو معرفی کرد؟

مثلا در یه تکست باکس یه عبارت فارسی مثل "دانلود " مینویسم ولی بعد زدن دکمه ی Submit

عبارت به این شکل در میاد " داÙ?Ù?Ù?د "

UTF-8 و اینجور چیزا رو یکم دستکاری کردم ولی درست نشد! اگه راه حلی سراغ دارید لطفا کمک کنید.

ممنون
:sad:
 

Shouli

Active Member
کد:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Language" content="en-us">

ببین خوبه ؟
 

milads

Banned
چطور میشه به یه سیستم کرکترهای فارسی رو معرفی کرد؟

مثلا در یه تکست باکس یه عبارت فارسی مثل "دانلود " مینویسم ولی بعد زدن دکمه ی Submit

عبارت به این شکل در میاد " داÙ?Ù?Ù?د "

UTF-8 و اینجور چیزا رو یکم دستکاری کردم ولی درست نشد! اگه راه حلی سراغ دارید لطفا کمک کنید.

ممنون
:sad:

شما encoding بانك اطلاعاتي MySQL رو UTF-8 كنيد . يا از Latin_1 استفاده كنيد .
اگر باز هم راهنمائي خواستيد بگيد .
 

ramin006

Member
[SHOULI];510001 گفت:
کد:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Language" content="en-us">

ببین خوبه ؟

فکر کنم مشکل بزرگتر از این حرفاست
چندین بار از این کد ها به روش های مختلف استفاده کردم
الان هم باز زدم ولی نشد.

فکر کنم خود سیستم با زبان فارسی مشکل داره باید یه دستی تو خود کدهای php برد؟

------ و همچنان نیازمند یاری خفنتان هستم--------
 

ramin006

Member
وقتی حروف فارسی رو در PhpMyadmin مستقیما وارد دیتابیس می کنم ، در phpmyadmin درست نشون نمیده ولی تو خود سیستم درست نشون میده .

پس حتما باید تو دیتابیس تغییراتی بدم لطفا بیشتر راهنمایی کنید....
 

jhoseini

Member
خوب روش هایی که گفته شد، برای رفع مشگل مرورگر یا دیتابیس بوده
اگه این دو قسمت درست کار کنند، چیزی باقی نمیمونه
میشه یه نمونه کد که این مشکل رو داره رو ضمیمه کنید؟

وقتی حروف فارسی رو در PhpMyadmin مستقیما وارد دیتابیس می کنم ، در phpmyadmin درست نشون نمیده ولی تو خود سیستم درست نشون میده .

پس حتما باید تو دیتابیس تغییراتی بدم لطفا بیشتر راهنمایی کنید....

PhpMyadmin با فارسی چندان سازگار نیست
من هم همین مشکل رو دارم، بنظرم چندان مهم نیست،
 
آخرین ویرایش:

ramin006

Member
بزارید بیشتر و واضح تر بگم من یه اسکریپتی دانلود کردم لینکشو اینجا گذاشتم:

http://www.forum.majidonline.com/showthread.php?t=73400

میتو نید نصبش کنید و ببینید که چطوره که اینطوره؟؟؟؟؟

اگه تونستید دسته بندی ها و لینک ها رو با نام فارسی ذخیره کنید به منم اطلاع بدید. ثواب داره.
 

RainDigital

Member
با arabic هم امتحان کنید (راست کلیک و انتخاب encoding و انتخاب arabic(windows) در IE(
 

milads

Banned
ببين ramin جان . شما در PHPmyadmin در صفحه اول در قسمت ايجاد database يه قسمت ديگه داري به نام collection شما collection رو باز كن . و latin1_bin رو انتخاب كن . وقتي database رو ساختي با اين collection سپس فايل هاي SQL رو Import كن .
اگه باز مشكل داشتي بگو .
 

se135954

Member
منم همین مشکل رو داشتم راه حل زیر رو امتحان کردم و نتیجه هم گرفتم
1- موقع ایجاد دیتا بیس توی mysql هم MySQL connection collation و هم زبان تمام جدول ها رو UTF8 - Persian گرفتم.
2- توی فایل کانکشن یا config.php کد خطهای زیر را پس از اتصال صفحه به بانک دقیقاً مثل شکل زیر قرار دادم.


$conntest = mysql_pconnect($hostname, $username, $password) or trigger_error(mysql_error(),E_USER_ERROR);

mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");
mysql_query("SET character_set_client = utf8 ");
mysql_query("SET character_set_results = NULL ") ;
mysql_query("SET character_set_connection = utf8 ");
?>


ببین این چهار تا خط کد در انتهای کانکشن باعث می شه اطلاعات به شکل یونیکد وارد بانک بشه و موقع query گرفتن از بانک هم درست نمایش داده بشه.

mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");
mysql_query("SET character_set_client = utf8 ");
mysql_query("SET character_set_results = NULL ") ;
mysql_query("SET character_set_connection = utf8 ");​
 
آخرین ویرایش:

ramin006

Member
بچه ها واقعا از راهنماییتون ممنونم.

میشه این کار رو روی لوکال هم انجام داد آخه تو phpmyadmin Easyphp چنین چیزی وجود نداره

اونجا هم میشه چنین کاری رو انجام داد؟
 

ramin006

Member
MySQL connection collation

در phpmyadmin Easyphp (لوکال) وجود نداره ، پس چطور میشه این کار رو انجام داد؟
 

f_mostafa_f

Active Member
میدونم کار بدیه که این تا÷یک قدیمی رو آوردم بالا ولی من بد جوری گیرم...

من یه سیستم رو فارسی کردم و فقط دوتا مشکل دارم....

مشکل اصلی همینه که تو این تاپیک داره بحث میشه که باعث شده تا این سیستم من نتونه سرچ کنه و همچنین Pdf بسازه...

الآن سیستم میترا داره این کار رو میکنه یعنی هم درست ذخیره میشه و هم درس جستجو میکنه و هم درست پی دی اف میده...

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

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

بازم عذر خواهی میکنم و ممنونم...
 

se135954

Member
من سیستمم رو فارسی کردم و با سرچ کردن هم مشکلی ندارم. فقط تا حالا ازش pdf نساختم. دقیقاً هم همون راهی را که بالا گفتم رو انجام دادم. چون بانکت رو قبلاً درست کردی phpmyadmin باز کن. زبان انگلیسی را از لیست آن انتخاب کن. با نکت را انتخاب کن. از دکمه های بالا روی دکمه opeartion کلیک کن. انتهای صفحه از بخش Collation ، از منوی باز شو UTF8 - Persian را انتخاب کن. روی دکمه Go جلوش کلیک کن.

این کار را برای تمامی جدول های بانکت هم انجام بده. روی اسم جدولت کلیک کن از دکمه های بالا روی دکمه opeartion کلیک کن. انتهای صفحه از بخش Collation ، از منوی باز شو UTF8 - Persian را انتخاب کن. روی دکمه Go جلوش کلیک کن.

خب حالا می رسیم به بخش php.
فایل config اتصال به بانکت رو با ادیتور باز کن. و 4 خط کد زیر را به انتهای آن قبل از تگ انتهایی php اضافه کن.

HTML:
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");
mysql_query("SET character_set_client = utf8 ");
mysql_query("SET character_set_results = NULL ") ;
mysql_query("SET character_set_connection = utf8 ");
]
 
آخرین ویرایش:

جدیدترین ارسال ها

بالا