http://www.xoops.ir

سیستم مدیریت محتوا زوپس

سیستم مدیریت محتوای زوپس، CMS قدرتمندی ‌است كه با زبان PHP نوشته شده و با بانک اطلاعات MySQL همخوانی دارد، استفاده از این نرم افزار كاملا آزاد و رایگان است، برای دریافت هسته‌ی اصلی این برنامه روی آیکن زیر کلیک کنید.

دریافت کنید
زوپس فارسی
زوپس فارسی
زوپس فارسی
زوپس فارسی
زوپس فارسی
زوپس فارسی
انجمن ها
ورود به سایت




ورود خودکار

واژه رمز را فراموش کرده‌اید؟
عضو شوید
افراد آنلاين
2 کاربر آن‌لاين است (1 کاربر در حال مشاهده‌ی سایت انجمن ها)

عضو: 0
مهمان: 2

بیشتر...
اگر از این پیام شکایت یا نظری دارید لطفا نظر خود را بنویسید. ناظر انجمن به آن رسیدگی خواهد کرد:*
کد تایید*
{۹} - {۱} = ?  
نتیجه این عبارت را وارد کنید
حداکثر تعداد تلاش برای ارسال: 10 مرتبه
 

چطور میتوانید در سایت های فارسی با کمک captcha از اسپم ها خلاص شوید.

عنوان: چطور میتوانید در سایت های فارسی با کمک captcha از اسپم ها خلاص شوید.
توسط عشق مدرن در تاریخ ۱۳۹۱/۲/۲۷ ۱۵:۰۵:۴۲

داستان های خلاص شدن از شر روبات های اسپم بسیار طولانیه که در تاپیک زیر توی زوپس میتونید یکمی بخونید:
http://xoops.org/modules/newbb/viewto ... id=346362#forumpost346362

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

ولی در فارسی شما میتونید فعلا با روش ساده ای از شر اونا خلاص بشید.

شما کافیه یه کپچای متنی ریاضی درست کنید و به جای اعداد لاتین از اعداد فارسی توش استفاده کنید.
تقریبا همه روبات ها انگلیسی هستند و نمیتونند از اعداد فارسی سر در بیارن. تازه میشه اعداد رو تبدیل به متن فارسی هم کرد مثلا:

دو به اضافه دو مساوی است با:

خب اینجوری صد در صد روبات ها مشکل پیدا میکنند.

حالا روشی که در سایتتون اعمالش کنید.
اول برید به:
public_html/class/captcha/config.php
و کپچا رو روی متنی بزارید

'mode' => 'text',  // default mode, you can choose 'text', 'image', 'recaptcha'(requires api key)

بعدش برید و فایل public_html/class/captcha/text.php رو با فایل زیری جایگزین کنید.
<?php
/**
 * CAPTCHA for text mode
 *
 * You may not change or alter any portion of this comment or credits
 * of supporting developers from this source code or any supporting source code
 * which is considered copyrighted (c) material of the original comment or credit authors.
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 *
 * @copyright       The XOOPS project http://sourceforge.net/projects/xoops/
 * @license         GNU GPL 2 (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html)
 * @package         class
 * @subpackage      CAPTCHA
 * @since           2.3.0
 * @author          Taiwen Jiang <phppp@users.sourceforge.net>
 * @version         $Id: text.php 8066 2011-11-06 05:09:33Z beckmi $
 */
defined('XOOPS_ROOT_PATH') or die('Restricted access');

class 
XoopsCaptchaText extends XoopsCaptchaMethod
{
    
/**
     * XoopsCaptchaText::render()
     *
     * @return
     */
    
function render()
    {
        
$form $this->loadText() . '&nbsp;&nbsp; <input type="text" name="' $this->config['name'] . '" id="' $this->config['name'] . '" size="' $this->config['num_chars'] . '" maxlength="' $this->config['num_chars'] . '" value="" />';
        
$form .= '<br />' _CAPTCHA_RULE_TEXT;
        if (!empty(
$this->config['maxattempts'])) {
            
$form .= '<br />' sprintf(_CAPTCHA_MAXATTEMPTS$this->config['maxattempts']);
        }
        return 
$form;
    }

    
/**
     * XoopsCaptchaText::loadText()
     *
     * @return
     */
    
function loadText()
    {
        
$val_a rand(09);
        
$val_b rand(09);
        
$expression "{".Convertnumber2farsi($val_a)."} + {".Convertnumber2farsi($val_b)."} = ?";
        
$this->code $val_a $val_b;
         return 
'<span style="font-style: normal; font-weight: bold; font-size: 100%; font-color: #333; border: 1px solid #333; padding: 1px 5px;">'.$expression.'</span>';
    }
}

?>

که اینجوری اعداد رو فارسی نمایش میده و روبات ها نمیتونن کاری بکنن.

البته میتونم کاری کنم که نیاز به دست بردن در این فایل هم نباشه و با تغییر در فایل locale.php در همین جا اعداد رو فارسی کنه

من الان ده روزه این رو در سایتم اعمال کردم و یه عدد روبات هم نتونسته ثبت نام کنه در حالیکه قبلا مدیران سایت روزی با ده تا روبات دست و پنجه نرم میکردن و پستاشونو دیلیت میکردن.