PDA

View Full Version : عدم فارسی نویسی



saeidejafari
سه شنبه 25 دی 1386, 13:58 عصر
من یه پروژ از اینترنت گرفتم که انگلیسیه و اگه بخوام متن فارسی تو اون بنویسم به صورت ؟؟؟؟؟ نمایش میده charset اون هم utf-8 است


<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">

مقدار charset هم ثابت CHARSET است که توی یه فایل دیگه اونو تعریف کرده


define('CHARSET', 'UTF-8');

mosab_vb
سه شنبه 25 دی 1386, 14:04 عصر
جای utf-8 بنویسید windows-1256.یه امتحان بکنید ببینید درست میشه؟بعد نتیجش رو مطرح کنید.

saeidejafari
سه شنبه 25 دی 1386, 14:18 عصر
بازم درست نشد

Bahram0110
سه شنبه 25 دی 1386, 14:30 عصر
1 - برنامه از دیتابیس استفاده می کنه؟

2 -اگه برنامت از تابع htmlentities استفاده می کنه... این تابع با فارسی مشکل داره (لا اقل برای من داشت)

mosab_vb
سه شنبه 25 دی 1386, 14:35 عصر
از فرانت پیج استفاده کن ببین اون چه جوری نمایش میده.اگه بازم علامت سوال بود که مشکل باید از فونت یا سیستمت باشه.

zfarhad2000
سه شنبه 25 دی 1386, 14:44 عصر
بهتره یک ادیتور خوب رو برای ویرایش فایلهای خود در نظر بگیری که قابلیتهای سازگاری با فارسی رو هم داشته باشه. موقع ذخیره کردن صفحات اونها رو در حالت utf-8 ذخیره کن.

mosab_vb
سه شنبه 25 دی 1386, 14:46 عصر
درسته.یک بار این فایلت رو با نات پد در حالت utf-8 ذخیره کن.دیگه فکر کنم درست بشه.

oxygenws
سه شنبه 25 دی 1386, 20:37 عصر
آقای mosab_vb، لطفا اگر در مورد موضوعی اطلاعاتی ندارید، کاربری که سوال پرسیده را گیج تر نکنید!!!
آقای سعید، پاسخ های بهرام رو بدید، سوال های ایشون به جا است.
اگر بگید با چه برنامه ای دارید کار می کنید هم می تونه کمک کنه.

mosab_vb
سه شنبه 25 دی 1386, 21:04 عصر
دوست عزیز.من الکی حرف نزدم.این کار با نات پد حل میشه اگه اون رو به صورت utf-8 ذخیره کنیم.من هم همین مشکل رو داشتم و حل شد.من هدفم فقط کمک به کاربر و کمک گرفتن هستش.اگه اون رو با EasyPHP بازش کنی یه کاراکتر شبیه این  در اول صفحه می افته.موفق باشید.

musiox
سه شنبه 25 دی 1386, 21:22 عصر
من فکر منظور دوستمون ( mosab_vb ) اضافه کردن مستقیم متن فارسی توی سورس برنامه است . که فکر نکنم منظور سوال کننده این باشه که به صورت مستقیم قصد همچین کاری رو برای فارسی کردن یا اضافه کردن متنی به پروژه داشته باشه . باید دید که این برنامه اطلاعاتی رو که از کاربر می گیره به چه روشی ذخیره می کنه.

zfarhad2000
سه شنبه 25 دی 1386, 22:37 عصر
دوست عزیز.من الکی حرف نزدم.این کار با نات پد حل میشه اگه اون رو به صورت utf-8 ذخیره کنیم.من هم همین مشکل رو داشتم و حل شد.من هدفم فقط کمک به کاربر و کمک گرفتن هستش.اگه اون رو با EasyPHP بازش کنی یه کاراکتر شبیه این  در اول صفحه می افته.موفق باشید.

اول از همه اینکه notepad روی هم رفته ادیتور خیلی ضعیفی هست و حتی در بدترین شرایط هم یک php کار نباید با این فاجعه کار کنه. همین چندکاراکتری که می‌گید به اول فایل اضافه میشه دلیلش همین notepad هست که در بعضی مواقع موقع ذخیره فایلهای utf-8 کاراکترهای نامربوطی رو به اول فایل اضافه می‌کنه و این مسئله سبب میشه اگه کاربر از cookie یا session استفاده کرده php نتونه کارها رو درست انجام بده. همین مشکل notepad برای برخی از کاربرها ساعتها سردرگمی درست می‌کنه.

دوم هم اینکه اگه واجب هست از ادیتور سبکی استفاده کنید ++notepad ادیتور خوبی هست.

musiox
چهارشنبه 26 دی 1386, 08:53 صبح
همین چندکاراکتری که می‌گید به اول فایل اضافه میشه دلیلش همین notepad هست که در بعضی مواقع موقع ذخیره فایلهای utf-8 کاراکترهای نامربوطی رو به اول فایل اضافه می‌کنه
این چند تا کاراکتری که می گی همچینم نامربوط نیستن.
اینجا (http://unicode.org/faq/utf_bom.html#22) یه نگاه بنداز .

oxygenws
چهارشنبه 26 دی 1386, 10:46 صبح
اینجا (http://en.wikipedia.org/wiki/Byte_Order_Mark) رو هم بخونید :)


[ltr]While UTF-8 (http://en.wikipedia.org/wiki/UTF-8) does not have byte order issues, a BOM encoded in UTF-8 may be used to mark text as UTF-8. It only identifies a file as UTF-8 and does not state anything about byte order.[1] (http://unicode.org/faq/utf_bom.html#29) Quite a lot of Windows (http://en.wikipedia.org/wiki/Microsoft_Windows) software (including Windows Notepad (http://en.wikipedia.org/wiki/Notepad)) adds one to UTF-8 files. However in Unix-like (http://en.wikipedia.org/wiki/Unix-like) systems (which make heavy use of text files (http://en.wikipedia.org/wiki/Text_files) for configuration) this practice is not recommended, as it will interfere with correct processing of important codes such as the hash-bang (http://en.wikipedia.org/wiki/Hash-bang) at the start of an interpreted script. It may also interfere with source for programming languages that don't recognise it. For example, gcc (http://en.wikipedia.org/wiki/GNU_Compiler_Collection) reports stray characters at the beginning of a source file[/ltr
]و برای یک کاربر وارد کامپیوتر یا یک توسعه دهنده، معمولا نیازی به استفاده از bom نیست! (دلایلش رو اندکی فکر کنید تا دریابید :) )

موفق باشید.

mosab_vb
چهارشنبه 26 دی 1386, 18:05 عصر
من دقیقا منظورم این بود که برای ورود اطلاعات از فرم اون صفحه ای که فرم رو برای کاربر نمایش می ده و اطلاعات رو می فرسته باید از نوع utf-8 باشه.همچنین بهتره که فیلدهای بانک یا خود بانک هم از نوع utf-8 باشه.نباشه هم مشکلی نیست میشه مقدارشون رو کانورت کرد.موفق باشید.

saeidejafari
یک شنبه 30 دی 1386, 11:42 صبح
فایل رو با notepad باز کردم و در هنگام ذخیره سازی encoding رو utf-8 کردم درست شد ولی در ادامه اجرای برنامه وقتی به خطی می رسد که هدر رو دستکاری می کنه پیغام خطای Cannot modify header information - headers already sent می ده

saeidejafari
سه شنبه 02 بهمن 1386, 12:28 عصر
توی nodpad++ هم فایلو باز کردم ،فارسی رو درست می نویسه ولی بازم پیغام Cannot modify header information - headers already sent میده یکی بهم گفت که فایلو توی محیط دات نت باز کن و اونو utf-8 کن ولی هنوز همان پیغام رو میده.
کسی می دونه که مشکل از کجاست ?

oxygenws
سه شنبه 02 بهمن 1386, 19:38 عصر
یکی بهم گفت که فایلو توی محیط دات نت باز کن و اونو utf-8 کن ولی هنوز همان پیغام رو میده.lol، چه دوست با نمکی داشتی :دی

جستجو کن، قبلا بحث شده. موضوع تاپیکرو هم بهش دقت کن و تو هر تاپیک یه موضوع رو بپرس.