PDA

View Full Version : سوال: چک کردن و حذف کردن کارکترهای غیر مجاز (فقط حروف فارسی، انگلیسی و اعداد و علامات)



sattaryekta
چهارشنبه 24 خرداد 1391, 21:28 عصر
سلام
خسته نباشید
بعضی کارکترها در بعضی فونت های فارسی یا انگلیسی خالی هستند
تایپ میشن و دیده نمیشن
لذا بعضی ها به قصد سوء استفاده نام های کاربری مسازن دقیقا شبیه نام های موجود در سایت
مثلا شبیه مدیر اصلی سایت

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

ممنونم

saeidpsl
چهارشنبه 24 خرداد 1391, 22:27 عصر
بفرما:چشمک:




<?php

function customword($string){


$tmp='[\x{067E}\x{0622}\x{0627}\x{0628}\x{062A}-\x{063A}\x{0641}-\x{064A}\x{0698}\x{06A9}\x{06AF}\x{06C1}\x{06CC}]|[a-zA-Z0-9]|[\'\/~`\!@#\$%\^&\*\(\)_\-\+=\{\}\[\]\|;:"\<\>,\.\?\\\]';
$username_php_re="/^($tmp)($tmp|\\s($tmp))*$/u";
$string = preg_match($username_php_re,$string);

return $string ;
};


$username="Aشaanیل#~!ی";


if (customword($username) == 0) {


echo"no";


}else{

echo "ok";
};
?>

s_dastjani
چهارشنبه 07 بهمن 1394, 11:13 صبح
این فقط چک میکنه حروف فارسی یا حروف لاتین یا عدد هست یا نه
برای حذف غیر از این حروف کدش چی میشه

Unique
چهارشنبه 07 بهمن 1394, 12:29 عصر
من توی وبلاگم توضیح دادم (http://www.geekfarsi.com/%D8%AD%D8%B0%D9%81-%DA%A9%D8%A7%D8%B1%D8%A7%DA%A9%D8%AA%D8%B1-%D9%87%D8%A7%DB%8C-%D8%BA%DB%8C%D8%B1-%D8%A7%D8%B2-%D9%81%D8%A7%D8%B1%D8%B3%DB%8C-%D9%88-%D8%A7%D9%86%DA%AF%D9%84%DB%8C%D8%B3%DB%8C-%D9%88/504)،‌ میتونی بخونی.