PDA

View Full Version : مشکل فارسی نویسی با utf-8 without BOM



binboy
جمعه 10 دی 1389, 15:04 عصر
سلام
وقتی یک فایل را با اینکودینگ utf-8 ذخیره می کنم عبارت فارسی با ارور هدر نمایش داده میشه و وقتی با utf-8 without BOM ذخیره می کنم ارور برطرف و عبارت فارسی بهم میریزد و به این شکل در می آید: سلام خوبی؟
راهکار حل این مشکل چیه؟

maysam.m
جمعه 10 دی 1389, 18:15 عصر
فکر کنم باید این کد رو به کدهای html ات در قسمت head اضافه کنی:

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

فکر میکنم وقتی اینکودینگ utf-8 without BOM نباشد اطلاعات اندکی در فایل قرار میگیرد که باعث میشود اینکودینگ به صورت خودکار تشخیص داده شود ولی وقتی utf-8 without BOM باشد این اطلاعات از فایل حذف میشود و مرورگر نمی تواند اینکودینگ صحیح را تشخیص دهد و باید از اون کد بالا استفاده کنید

idocsidocs
یک شنبه 12 دی 1389, 00:55 صبح
سلام
وقتی یک فایل را با اینکودینگ utf-8 ذخیره می کنم عبارت فارسی با ارور هدر نمایش داده میشه و وقتی با utf-8 without BOM ذخیره می کنم ارور برطرف و عبارت فارسی بهم میریزد و به این شکل در می آید: سلام خوبی؟
راهکار حل این مشکل چیه؟

سلام

در هنگام تماس با پایگاه داده رعایت این نکات ضروری هست، باید هنگام تماس با پایگاه داده از کوری زیر استفاده کنید. و بعد از این خط، کوری خودتون رو قرار بدید.


mysqli_set_charset($cxn, "utf8");
همچنین اگر از توابعی مثل htmlspecialchars استفاده می کنید باید عبارت UTF-8 رو به عنوان پارامتر به تابع بدید.