Regex 验证Codeigniter中的输入是否具有安全性、空格字母数字和特定字符
由于不擅长Regex 验证Codeigniter中的输入是否具有安全性、空格字母数字和特定字符,regex,codeigniter,validation,Regex,Codeigniter,Validation,由于不擅长Regex,而且是Codeigniter新手,我需要帮助验证输入的安全性(XSS、注入等),并将其限制在字母数字、空格和类似@、#的字符内()[] 不允许使用其他字符。 有效字符串如下所示(字符序列无关紧要,任何有效字符或字母或数字都可以出现在字符串中的任何位置): [Wave]你好,身份证号码123注册为bol@gmail.com(昵称bol (罗伊) 我在Controller中编写了以下代码: public function _titleRegex($data) { if
Regex
,而且是Codeigniter
新手,我需要帮助验证输入的安全性(XSS、注入等),并将其限制在字母数字、空格和类似@、#的字符内()[]
不允许使用其他字符。
有效字符串如下所示(字符序列无关紧要,任何有效字符或字母或数字都可以出现在字符串中的任何位置):
[Wave]你好,身份证号码123注册为bol@gmail.com(昵称bol
(罗伊)
我在Controller中编写了以下代码:
public function _titleRegex($data)
{
if(preg_match('/^[][a-zA-Z0-9@# ,().]+$/',$data))
{
return TRUE;
}
else
{
return "<div class='alert alert-danger'>Some invalid characters are present.</div>";
//Also tried return FALSE; still I get the same error
}
}
public function addproperty()
{
$msg="";
$config = array(
array(
'field' => 'categories',
'label' =>'Category',
'rules' => 'required'
),
array(
'field'=>'ptitle',
'label'=>'Property Title',
'rules'=>'trim|required|xss_clean|callback__titleRegex'
)
);
$this->form_validation->set_rules($config);
if ($this->form_validation->run() == FALSE)
{
return validation_errors();
}
else
{
//do the work and then the further code ........
public function\u titleRegex($data)
{
如果(预匹配('/^[][a-zA-Z0-9@#,().]+$/',$data))
{
返回TRUE;
}
其他的
{
return“存在一些无效字符。”;
//还尝试返回FALSE;但我仍然得到相同的错误
}
}
公共函数addproperty()
{
$msg=”“;
$config=array(
排列(
“字段”=>“类别”,
“标签”=>“类别”,
'规则'=>'必需'
),
排列(
'field'=>'ptitle',
“标签”=>“属性标题”,
“规则”=>“修剪|必需| xss |清洁|回调|标题Regex”
)
);
$this->form\u validation->set\u rules($config);
如果($this->form\u validation->run()==FALSE)
{
返回验证_错误();
}
其他的
{
//完成这项工作,然后执行进一步的代码。。。。。。。。
在运行页面时,我遇到以下错误:
无法访问与字段名属性标题对应的错误消息。(\u titleRegex)
请参考回复“我的我”来帮助。@第四只鸟,以下可以帮助您:
array(
'field'=>'ptitle',
'label'=>'Property Title',
'rules'=>'trim|required|xss_clean|regex_match[/^[][a-zA-Z0-9@# ,().]+$/]'
)
他们把这个问题标记为否定的人,我请求你提供给我这个问题的原因你看了吗?@Thefourthbird当我写到我是Codeigniter的新手,不擅长正则表达式,所以无法编译已经可以解决我问题的答案,这就是为什么我在没有任何代码的情况下发布这个问题的原因。它是正确的吗?看到了吗第四只鸟是的,它成功了,非常感谢:)