ورود

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : کاراکتر های نامفهوم در نوشته فارسی



aghaee
July 19th, 2011, 23:30
سلام
این کاراکترهای برای چی هست؟ چطور میشه این مشکل رو رفع کرد؟

ممنون میشم راهنمایی کنید

با تشکر

hamidreza_s
July 19th, 2011, 23:46
کدوم کاراکترها؟ اگه نشون نمیده عکس بگیر بزار.

aghaee
July 20th, 2011, 00:21
شرمنده عکس یادم رفته بود

http://www.up.iranblog.com/images/bv7e0irdyw4coyrvogo.gif

vahab00
July 20th, 2011, 01:12
اين كاركتر ها به هنگام تبديل قالب از ans به utf8 بوجود مياد
فايل قالب خود را به utf8 تغيير دهيد و اگر كدي در آم قسمت وجود دارد پاك نماييد
به نظر بنده اين كد در قالب شما هست . پاكش كنيد حله...
موفق و سربلند باشيد

يا حق

the_coder
July 20th, 2011, 02:28
سلام
وقتی در متن فارسی از طریف دستوراتی مانند substr می خوان فقط قسمتی از متن رو نشون بدن این مشکل به وجود میاد چون بعضی کارکتر های فارسی بیش از 1 حرف محسوب میشن
راه حل اینه که به جاش شمردن تعداد حرف تعداد کلمه رو بشماریم (برای تشخیص بین هر کلمه با کلمه بعد یک space وجود داره)

aghaee
July 20th, 2011, 07:58
سلام
وقتی در متن فارسی از طریف دستوراتی مانند substr می خوان فقط قسمتی از متن رو نشون بدن این مشکل به وجود میاد چون بعضی کارکتر های فارسی بیش از 1 حرف محسوب میشن
راه حل اینه که به جاش شمردن تعداد حرف تعداد کلمه رو بشماریم (برای تشخیص بین هر کلمه با کلمه بعد یک space وجود داره)

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

the_coder
July 20th, 2011, 09:23
میشه بیشتر راهنمایی کنید؟ با چه دستوری؟
برای مثال کد زیر 2 کلمه از فیلد تایتل برای ما چاپ می کنه


$res = $cnn->query("SELECT id,title zone_news");
$row = $res->fetch()
$cu = explode(" ",$row[2]);
echo $cu[0].' '.$cu[1];

hamidreza_s
July 20th, 2011, 13:26
ببخشید این سایت WHT چرا قاط داره پاک شد رفت تایپ هام. دیگه حوصله نسیت خلاصه میگم.
از substr نباید استفاده کنی چون یونیکد ساپورت نیست.
بجاش باید از دستورات iconv و mbstring استفاده کنی. که یونیکد ساپورت هست.

substr دو بایت که ماله یه کاراکتر هست رو از وسط میشکنه و یه کاراکتر نامفهوم ایجاد میکنه.

aghaee
July 20th, 2011, 15:17
ببخشید این سایت WHT چرا قاط داره پاک شد رفت تایپ هام. دیگه حوصله نسیت خلاصه میگم.
از substr نباید استفاده کنی چون یونیکد ساپورت نیست.
بجاش باید از دستورات iconv و mbstring استفاده کنی. که یونیکد ساپورت هست.

substr دو بایت که ماله یه کاراکتر هست رو از وسط میشکنه و یه کاراکتر نامفهوم ایجاد میکنه.

ممنون بابت راهنمایی
میشه یه نمونه ساده رو مثال بزنید

Rezash
July 21st, 2011, 12:11
اگر از substr استفاده ميكنيد بجاي اون از mb_substr استفاده ميكنيد.اگر مشكل رفع نشد اين قسمت از كدتون رو بذاريد تا اصلاح كنيم.

aghaee
July 21st, 2011, 14:02
اگر از substr استفاده ميكنيد بجاي اون از mb_substr استفاده ميكنيد.اگر مشكل رفع نشد اين قسمت از كدتون رو بذاريد تا اصلاح كنيم.

سلام
هیچ فرقی نکرد

اینم کدش:

$data = mysql_fetch_array($mysql_q);

$text=$data['text'];
$short = mb_substr( $text, 0, 200);

---------- Post added at 01:02 PM ---------- Previous post was at 01:01 PM ----------

$short که به خروجی میره

echo $short

hamidreza_s
July 21st, 2011, 17:50
echo mb_substr("حمید",0, 2, "UTF-8");

Rezash
July 21st, 2011, 19:24
$text=$data['text'];
//$short = mb_substr( $text, 0, 200);
mb_substr($text,0,200,'UTF-8')

aghaee
August 12th, 2011, 17:48
بله درست شد، ممنون دستتون درد نکنه