首先。$_POST['user'] 这个需要基本的过滤,比如过滤html tags,scripts。另外可以进行基本限制操作,比如设定文本框maxlength=7.其次你的客户端要进行基本的验证。

解决方案 »

  1.   

    ‮ 是 unicode 字符的 HTML 实体表示
    该字符在浏览器中不可见,在文本编辑器中表现为小黑方块
    应该是用某种输入法提供的空白符
    由于该字符不能被数据库识别,所以被转换成了 HTML 实体保存作为用户名,是不应该出现不可见字符的
    所以你应该检查串中是否有不可见字符
      

  2.   

    另外关于参数过滤,如果是字符串类型的用htmlspecialchars($_POST['uname'],ENT_QUOTES);
    如果是整型,用intval()过滤
      

  3.   

    过滤吧,,,实体符号转义php自带的函数好像不靠谱