PDA

View Full Version : گفتگو: مشکلات احتمالی برای دادن نام کاربری فارسی به کاربران



Zabi42
دوشنبه 02 دی 1392, 14:15 عصر
با سلام خدمت دوستان
ایا دادن نام کاربری فارسی به کاربران کار درستی است یا خیر؟
و اگر نام کاربری فارسی باشد چه مشکلاتی ممکن است بوجود آید؟

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

a_mzadeh
دوشنبه 02 دی 1392, 14:54 عصر
سلام؛
استفاده از نام کاربری فارسی یک امر سلیقه‌ای هست و افراد زیادی هستن که ترجیح میدن برای لاگین به یک سیستم از نام کاربری فارسی استفاده کنن.
تنها مشکلی که در استفاده از نام کاربری فارسی ممکن هست پیش بیاد (همون طور که خود شما اشاره کردی) اینه که ممکنه از یک سیستم عمل لاگین انجام بشه و از یک سیستم دیگه نه! دلیل این مشکل این هست که بعضی از کاراکترها مثل "ی" و "ک" در سیستم‌های مختلف کدهای مختلفی دارن. مثلا در بعضی از سیستم‌ها "ي" با دونقطه زیر تایپ میشه ولی در بقیه بصورت "ی" تایپ میشه. برای رفع این مشکل کافی هست شما داده‌ای رو که از سمت کلاینت میگیری، قبل از هر کاری کاراکترهای اون رو اصلاح کنی (مثلا تمام "ي" ها رو به "ی" تبدیل کنی) اینطوری هم در عملیات لاگین و هم در جستجو مشکلی برای شما پیش نخواهد آمد.

موفق باشی

Zabi42
دوشنبه 02 دی 1392, 15:36 عصر
a_mzade ممنون از نظرت

ایا در زبان فارسی به غیر از "ی" و "ک" کاراکتر دیگری هم هست که ممکن باشد در سیستم های مختلف کدهای مختلف داشته باشد؟؟

و اینکه مثلا سیستم من کارکتر "ی" رو به یک صورت می زنه و مدل های دیگش رو چطور باید تایپ کنم که بعدا بتونم با "ی" خودم جایگزینش کنم؟(یعنی الان شما ی پایین نقطه دار رو چطور تایپ کردی؟؟)

a_mzadeh
دوشنبه 02 دی 1392, 16:04 عصر
کاراکترهای دیگه‌ای هم ممکن هست باشن که باعث خطا بشن ولی من تا الان فقط با همین دو تا کاراکتر برخورد کردم.
این کدی هست که خودم تو پروژه‌هام ازش استفاده می‌کنم و تا الان مشکلی نداشتم باهاش:


$str = user input ...
$arabicLetters = array('ي', 'ك');
$persianLetters = array('ی', 'ک');
for ($i=0; $i<1; ++$i) {
$str = str_replace($arabicLetters[$i], $persianLetters[$i], $str);
}