2

我有从我的表单中收集的表单字段

 var dataString = $("form").serialize();

然后我将它作为 dataType "html" 发送到我的控制器

我的 dataString 的 var_dump 看起来像这样(到目前为止,它将包含电子邮件地址、选择选项等)

array(3) {
  ["username"]=>
  string(5) "mikey"
  ["firstname"]=>
  string(4) "tes%"
  ["lastname"]=>
  string(6) "tester" }

我的问题如下:在将数据发送到我的模型之前,我应该使用什么正确的表格卫生方法?我知道我需要去除特殊字符等,我应该使用一些预打包的类吗?

我需要像这样分解我的数据吗

  $username =  trim(Array[0]) ; 
4

2 回答 2

1

CodeIgniter 的xss_clean功能应该足以满足大多数用途。

编辑:感谢@Starx's answer指出您可以通过$config['global_xss_filtering'] = TRUE;config.php文件中设置来自动为您调用此功能。

另请查看表单验证类。这是一个示例: http ://ellislab.com/codeigniter/user-guide/libraries/form_validation.html#preppingdata

另外,由于您通过 AJAX 发送表单数据,我只想提一下,在 Javascript 中进行输入清理是相当无用的,因为它可以绕过它,所以在服务器端进行,因为您似乎打算这样做无论如何,绝对是要走的路。

于 2013-04-21T02:59:33.400 回答
1

启用 XSS 过滤application/config/config.php

$config['global_xss_filtering'] = TRUE;
于 2013-04-21T03:00:59.847 回答