شریفی
2 سال پیش توسط شریفی مطرح شد
2 پاسخ

مشکل با اعداد فارسی وارد شده توسط کاربر شده

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


ثبت پرسش جدید
مهدی اردشیر
تخصص : یه برنامه نویس
@mehdi0121 2 سال پیش مطرح شد
0

سلام فکر کنم با جی اس میتونید این مشکل رو حل کنید
https://jobteam.ir/ProductUser/263-jquery-convert-numeric-persian-to-latin


متین
تخصص : برنامه نویس بک اند
@vmatin 2 سال پیش مطرح شد
1

میتونید قبل از ارسال شماره به دیتابیس اعداد فارسی یا عربی را با انگلیسی جایگزین کنید
اگر اسکریپت شما به زبان php است از تابع tr_num استفاده کنید
https://jdf.scr.ir/rahnama/tr_num
من معمولا از تابع زیر استفاده میکنم

function convert2english($string) {
    $newNumbers = range(0, 9);
    // 1. Persian HTML decimal
    $persianDecimal = array('۰', '۱', '۲', '۳', '۴', '۵', '۶', '۷', '۸', '۹');
    // 2. Arabic HTML decimal
    $arabicDecimal = array('٠', '١', '٢', '٣', '٤', '٥', '٦', '٧', '٨', '٩');
    // 3. Arabic Numeric
    $arabic = array('٠', '١', '٢', '٣', '٤', '٥', '٦', '٧', '٨', '٩');
    // 4. Persian Numeric
    $persian = array('۰', '۱', '۲', '۳', '۴', '۵', '۶', '۷', '۸', '۹');

    $string =  str_replace($persianDecimal, $newNumbers, $string);
    $string =  str_replace($arabicDecimal, $newNumbers, $string);
    $string =  str_replace($arabic, $newNumbers, $string);
    return str_replace($persian, $newNumbers, $string);
}

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام