درج نوشته فارسی در mysql با php

paphooman

New Member
سلام داداش
من زیاد پی اچ پی بلد نیستم اما اینو میدونم که شما کل collection ها تو بکنی utf8-persion بعد تو صفحه های سایتت این کد رو اضافه کنی قبل از همه کد های پی اچ پی mysql_query("SET NAMES utf8"); حله.
 

izan

New Member
سلام

مشکل فارسی نشون دادن و همونطور که paphooman گفتن حل میشه با collection و utf8-persion و قبل از اتصال به دیتابیس با این کوئری utf8 و ست کردن
PHP:
mysql_query('SET NAMES \'utf8\'');

مشکل خود منم بود که از راهنمایی اینجا و اینجا حل شد.
 
آخرین ویرایش:

hasanak852

Active Member
من می خواهم حروف فارسی در دیتابیسم به صورت کد اسکی ذخیره بشه من توی مای اسکیول نوع دیتابیس و جداول را utf8-persian گذاشتم و حتی ascii هم امتحان کردم ولی جواب نداد به نظر من اگه مشکل بالا حل بشه مشکل دوست عزیزمون هم حله چون کد اسکی را در تمامی مرورگر ها با تمامی فرمت ها قابل خواندن می باشد لطفا ...

از این تابع استفاده کن
PHP:
function fa($word) {
    $num=array('^0', '^1', '^2', '^3', '^4', '^5', '^6', '^7', '^8', '^9');
    $cod=array('٠', '١', '٢', '٣', '٤', '٥', '٦', '٧', '٨', '٩');
    for($i=0; $i<10; $i++)
    {
        $word=str_replace($num[$i], $cod[$i], $word);
    }    
    $wrd=array('آ', 'ا', 'ب', 'پ', 'ت', 'ث', 'ج', 'چ', 'ح', 'خ', 'د', 'ذ', 'ر', 'ز', 'ژ', 'س', 'ش', 'ص', 'ض', 'ط', 'ظ', 'ع', 'غ', 'ف', 'ق', 'ک', 'ك', 'گ', 'ل', 'م', 'ن', 'و', 'ه', 'ي', 'ي', 'ئ');
    $acc=array('آ', 'ا', 'ب', 'پ','ت', 'ث', 'ج', 'چ', 'ح','خ', 'د', 'ذ', 'ر', 'ز','ژ', 'س', 'ش', 'ص', 'ض','ط', 'ظ', 'ع', 'غ', 'ف','ق', 'ک', 'ک', 'گ', 'ل', 'م','ن', 'و', 'ه', 'ی', 'ی', 'ئ');
    for($i=0; $i<36; $i++)
    {
        $word=str_replace($wrd[$i], $acc[$i], $word);
    }
    return $word;
}
برای این که عددها تبدیل بشه به فارسی باید قبل هر عددی "^" بذارین
مثلا:
PHP:
$a="سال ^1^3^9^0 هجری شمسی";
echo fa("$a");
 

Masoud1365

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

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

بالا