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

ف*ی*ل*ت*ر کردن نام کاربری و ایمیل

تاریخ انتشار: 20 دی 1387
ارسال کننده: Arash.N
فکر میکنم جای این ماژول توی این سیستم خیلی خالی بود ! توسط ایم ماژول میتونید نام کاربری و ایمیل رو ف*ی*ل*ت*ر کنید. مثلا نام های کاربری ناجور و ایمیل هایی از سایتهای خودتون و یا سایت های بد رو ف*ی*ل*ت*ر کنید. مثلا میتونید توی قسمت ف*ی*ل*ت*ر ایمیل آدرس datalifeengine.ir رو بنویسید که کسی الکی آدرس ایمیلی از این سایت قرار نده و یا در قسمت ف*ی*ل*ت*ر کردن نام کاربری میتونید نام کاربری های بد و زشت رو ف*ی*ل*ت*ر کنید.

ف*ی*ل*ت*ر کردن نام کاربری و ایمیل

ف*ی*ل*ت*ر کردن نام کاربری و ایمیل


1- فایل زیر را دانلود کرده و به جای مشخص شده آپلود کنید:
دانلود کنید

2- به phpMyAdmin ساییتون برید و دیتابیس سایتتون رو انتخاب کنید و در تب Sql کدهای زیر را وارد کنید و پس از وارد کردن بر روی دکمه Go کلیک کنید تا جدولها در دیتابیس ساخته شوند:
CREATE TABLE `dle_users_filter` (
  `id` mediumint(8) unsigned NOT NULL auto_increment,
  `type` tinyint(1) NOT NULL default '1',
  `word` varchar(100) NOT NULL default '',
  PRIMARY KEY  (`id`)
) TYPE=MyISAM /*!40101 DEFAULT CHARACTER SET cp1251 COLLATE cp1251_general_ci */


3- فایل Admin.php رو باز کنید و به دنبال کد زیر بگردید:
'googlemap'    => 'admin',

بعد از آن , کد زیر رو قرار بدید:
'userfilter'    => 'admin',


4- فایل Engine/inc/Options.php رو باز کنید و به دنبال کد زیر بگردید:
$options['user'] = array(

          array(
                    'name'       => $lang['opt_group'],
                    'url'        => "$PHP_SELF?mod=usergroup",
                    'descr'      => $lang['opt_groupc'],
                    'image'      => "usersgroup.png",
                    'access'     => "1",
                    ),

بعد از کدی که پیدا کردید , کد زیر رو قرار بدید:
    array(
                   'name'       => $lang['opt_ufilt'],
                   'url'        => "$PHP_SELF?mod=userfilter",
                   'descr'      => $lang['opt_ufiltc'],
                   'image'      => "blockip.png",
                   'access'     => "1",
                   ),


5- فایل Language/Farsi/adminpanel.lng رو باز کنید و به دنبال کد زیر بگردید:
$lang = array (

بعد از کد بالا , کدهای زیر رو قرار بدید:
'ufilt_nick'    =>    "نام کاربری:",
'ufilt_mail'    =>    "ایمیل:",
'ufilt_fadd'    =>    "ف*ی*ل*ت*ر کردن نام کاربری و ایمیل",
'ufilt_list'    =>    "لیست نام های کاربری و ایمیل های ف*ی*ل*ت*ر شده",
'ufilt_empty'    =>    "لیست خالی میباشد",
'ufilt_type'    =>    "Type",
'ufilt_data'    =>    "Meaning",
'ufilt_notext'    =>    "Unspecified value!",
'ufilt_ermail'    =>    "E-mail is not correct!",
'ufilt_dupl'    =>    "The reference value already exists in the database!",
'opt_ufilt'        =>    "ف*ی*ل*ت*ر کردن نامهای کاربری",
'opt_ufiltc'    =>    "ف*ی*ل*ت*ر کردن نام های کاربری و ایمیل ها",


6- در فایل Language/Farsi/website.lng کد زیر را پیدا کنید:
$lang = array (

بعد از آن کد زیر رو قرار بدید:
'reg_err_111'    =>    "<li>نام کاربری انتخابی شما غیر مجاز میباشد!</li>",
'reg_err_112'    =>    "<li>ایمیلی که وارد کردید غیر مجاز میباشد!</li>",


7- در فایل Engine/Modules/Register.php به دنبال کد زیر بگردید:
if ($name == "") $stop .= $lang['reg_err_7'];

در پایین آن , کد زیر رو قرار بدید:
    if ($stop == ""){

        $user_filter = get_vars ("user_filter");
        if (!$user_filter){
            $user_filter = array();
            $db->query("SELECT type, word FROM " . USERPREFIX .

"_users_filter");
            while($row = $db->get_row()){
                if ($row['type'])
                    $user_filter['name'][] = $row['word'];
                else
                    $user_filter['mail'][] = $row['word'];
            }
            $db->free();
            set_vars ("user_filter", $user_filter);
        }

        if (in_array(strtolower($name), $user_filter['name'])) $stop .= $lang

['reg_err_111'];
        if (in_array(strtolower($email), $user_filter['mail'])) $stop .= $lang

['reg_err_112'];

    }


8- فایل Engine/Ajax/Registration.php رو باز کنید و بعد از کد:
    if (empty($name))
    {
        
            $stop .= $lang['reg_err_7'];
    }

کد زیر را قرار دهید:
if ($stop == ''){

    $user_filter = get_vars ("user_filter");
    if (!$user_filter){
        $user_filter = array();
        $db->query("SELECT type, word FROM " . USERPREFIX . "_users_filter");
        while($row = $db->get_row()){
            if ($row['type'])
                $user_filter['name'][] = $row['word'];
            else
                $user_filter['mail'][] = $row['word'];
        }
        $db->free();
        set_vars ("user_filter", $user_filter);
    }

    if (in_array(strtolower($name), $user_filter['name'])) $stop .= $lang

['reg_err_111'];

}


حالا میتونید از آدرس زیر نام های کاربری و ایمیل ها رو ف*ی*ل*ت*ر کنید (میتونید به مدیریت کامل سایت برید و از اونجا روی آیکون این ماژول کلیک کنید و کارتان را انجام دهید):



گروه دیتالایف انجین فارسی bully
    6 نفر (6 کاربر و 0 میهمان) از این مطلب تشکر کرده اند.
    تشکر
    عضو سایت
    20 دی 1387 - 02:40
    Arash jan dastet dard nakone . Hame modira postashun ro negah dashte budan emshab bedan :)
    مدیر بازنشسته
    20 دی 1387 - 02:44
    faramobile,
    خواهش میکنم D: آره , فکر کنم همه نگه داشته بودن امشب بدن haha اما من امشب این پست رو دیدم و همین امشب گذاشتم wink
    عضو سایت
    20 دی 1387 - 13:49
    مرسی آرش جان
    مدیر بازنشسته
    20 دی 1387 - 14:00
    Dear.Alexm,
    خواهش flower
    عضو سایت
    21 دی 1387 - 21:03
    اینو من دوست دارم

    مرسییییی
    عضو سایت
    08 اسفند 1387 - 12:54
    مرسی
    ولی دو تا مشکل بزرگ داره
    1- برای فارسی کار نمیکنه یعنی بعضی کلمات را عجیب و غیرب سیو میکنه
    2- شما مثال زدید که اگر اسم سایت رو بنویسیم ایمیل به اسم اون سایت نمیشه قرار داد. من همه جورش رو امتحان کردم اگر یک ایمیل مشخص ننویسید اصلا قبول نمکنه که در لیستش قرار بده
    لطفا راهنمایی بفرمایید.
    جهت ارسال نظر، فرم زیر را تکمیل نمائید:
    نام:*
    ایمیل:*
    متن نظر:

     
    پررنگکج خط دارخط دار در وسط|سمت چپوسط سمت راست|قرار دادن شکلکانتخاب رنگ|پنهان کردن متنقراردادن نقل قولتبدیل نوشته ها به زبان روسیقراردادن Spoiler
    کد امنیتی: *