关于PHP中禁止敏感数据的注册问题

1.对敏感数据进行检测

    if (mb_strlen($_string,'utf-8') < $_min_num || mb_strlen($_string,'utf-8') > $_max_num) {
        _alert_back('长度不得小于'.$_min_num.'位或者大于'.$_max_num.'位');
    }

2.限制敏感字符

    //限制敏感字符
    $_char_pattern = '/[<>\'\"\ \ ]/';
    if (preg_match($_char_pattern,$_string)) {
        _alert_back('用户名不得包含敏感字符');
    }

对应的代码字段

function _check_username($_string,$_min_num,$_max_num) {
    //去掉两边的空格
    $_string = trim($_string);
    
    //长度小于两位或者大于20位
    if (mb_strlen($_string,'utf-8') < $_min_num || mb_strlen($_string,'utf-8') > $_max_num) {
        _alert_back('长度不得小于'.$_min_num.'位或者大于'.$_max_num.'位');
    }
    
    //限制敏感字符
    $_char_pattern = '/[<>\'\"\ \ ]/';
    if (preg_match($_char_pattern,$_string)) {
        _alert_back('用户名不得包含敏感字符');
    }
    
    //限制敏感用户名
    $_mg[0] = '张三';
    $_mg[1] = '李四';
    $_mg[2] = '王二';
    //告诉用户,有哪些不能够注册
    foreach ($_mg as $value) {
        $_mg_string .= '[' . $value . ']' . '\n';
    }
    //这里采用的绝对匹配
    if (in_array($_string,$_mg)) {
        _alert_back($_mg_string.'以上敏感用户名不得注册');
    }
    
    //将用户名转义输入
    return mysql_real_escape_string($_string);
}

警告设置函数

 function _alert_back($_info) {
    echo "<script type='text/javascript'>alert('".$_info."');history.back();</script>";
    exit();
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值