نمایش نتایج 1 تا 6 از 6

نام تاپیک: مشکل در خواندن اطلاعات از پایگاه داده

  1. #1

    مشکل در خواندن اطلاعات از پایگاه داده

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

    و قبل از خواندن اطلاعات از دیتابیس هم از دستور زیر استفاده می کنم:
    mysql_query('SET NAMES \'utf8\'');

    ولی وقتی اطلاعات دیتابیس رو می خونم نامفهمومه که حتما باید utf8 رو دستی تو مرورگر درست کنم تا اطلاعات رو درست نمایش بده.
    چیکار باید بکنم که نیازی به تنظیم دستی utf8 نباشه؟
    ممنون

  2. #2
    کاربر دائمی آواتار Unique
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    ایران - اصفهان
    پست
    3,199

    نقل قول: مشکل در خواندن اطلاعات از پایگاه داده

    حیف که دوستان زحمت جستجو به خودشون نمیدن وگرنه انقدر پست تکراری در مورد نمایش فارسی ، تاریخ فارسی ، کار با تاریخ ها و ... را شاهد نبودیم.
    اما جدا از این حرف ها ، شما باید چند تا چیز را برای نمایش درست فارسی انجام بدین :
    1 - فایل php را حتما به صورت utf-8 ذخیره کنین البته بدون BOM چون توی بعضی سرور ها مشکل ساز میشه
    2 - حتما توی head فایل content-type را درست تعریف کنی :
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

    3 - زمان اتصال به پایگاه داده این دو تا خط را اجرا کنید :
    mysql_query("SET NAMES 'utf8'");
    mysql_query("SET character_set_connection = 'utf8'");


    یا بجای دو خط بالا (که بهتره اینجوری باشه تا موقع escape کردن امنیت برای utf-8 هم اعمال بشه) :
    mysql_set_charset('utf8',$link_id);


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

  3. #3

    نقل قول: مشکل در خواندن اطلاعات از پایگاه داده

    سلام دوست من
    من همه این کارا رو قبل از اینکه تاپیک بزنم تو فروم سرچ کردم ولی باز هم به نتیجه نرسیدم کارایی رو که شما هم فرمودید انجام دادم ولی هنوز بازم مشکل دارم
    آیا نیازی هست که php.ini رو هم ویرایش کنم.

  4. #4
    کاربر دائمی آواتار Unique
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    ایران - اصفهان
    پست
    3,199

    نقل قول: مشکل در خواندن اطلاعات از پایگاه داده

    توی مثال بالای خودتون :

    SET character_set_connection = 'utf8'


    را نمیبینم ! در ضمن اگه اشتباه نکنم این بحث utf-8 در زمان ثبت اطلاعات یا زمانی که از توابع خود MySQL برای پردازش فیلد های فارسی استفاده میشه (مثل تابع concat) کاربرد داره و نه در زمان خوندن اطلاعات !
    شما به احتمال فراوان مشکلتون از فایل php هستش !

    آیا نیازی هست که php.ini رو هم ویرایش کنم
    خیر php.ini ربطی به مشکل شما نداره !

    میشه نمونه فایل خودتون یا print screen بدین ؟

  5. #5

    نقل قول: مشکل در خواندن اطلاعات از پایگاه داده

    سلام خدمت دوستان
    متوجه چیزی شدم
    من با وجودی که کل مراحلی که دوست خوبم unique گفت انجام دادم ولی باز هم مشکلم پا بر جا بود. ولی متوجه شدم که سایت من فقط با مرورگر موزیلا و تو localhost مشکل داره. تو هاست خودم هم تست کردم با موزیلا مشکل نداشت.

    مثلا کدای ساده زیر
    کد HTML:
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    </head>
    <body>
    <?php
    echo "سلام دوستان";
    ?>
    </body>
    </html>
    کسی چیزی به ذهنش نمی رسه که چه طور این مشکل رو درست کنم؟
    درضمن موزیلای خودمم رو هم آپدیت کردم
    آخرین ویرایش به وسیله esmahdi : دوشنبه 18 مهر 1390 در 12:36 عصر

  6. #6

    نقل قول: مشکل در خواندن اطلاعات از پایگاه داده

    فایل مورد نظر را در notepad باز کنید و آنر Save As کنید و هنگام اینکار Encoding فایل را روی utf تنظیم کنید

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •