我目前正在学习框架"CodeIgniter"。但是我的表单验证有问题。首先,让我向你展示我的观点:
<form method="post" action="connexion">
<label for="pseudo">Pseudo : </label>
<input type="text" name="pseudo" value="" />
<label for="mdp">Mot de passe :</label>
<input type="password" name="mdp" value="" />
<input type="submit" value="Envoyer" /></form>
我的控制器:
public function connexion()
{
$this->load->library('form_validation');
$this->form_validation->set_rules('pseudo', '"user name"', 'trim|required|min_length[5]|max_length[52]|alpha_dash|encode_php_tags|xss_clean');
$this->form_validation->set_rules('mdp', '"password"', 'trim|required|min_length[5]|max_length[52]|alpha_dash|encode_php_tags|xss_clean');
if($this->form_validation->run())
{
$this->load->view('connexion_ok');
}
else
{
$this->load->view('form');
}
}
当我在set_rules()中删除控制器中的“xss_clean”过滤器时,它工作正常,表单有效。如果“xss_clean”存在,则它不起作用,将进入else。我在输入中不使用特殊字符,只使用字母。
在设置中,我把这个设置为true:$config['global_xss_filtering']=TRUE;
我在某个地方读到“xss_clean”过滤器没用。我还能用什么?也许是帮手或者别的什么?谢谢你们
我不同意DFriend的回答。
每个CodeIgniter留档:
XSS转义应该在输出上执行,而不是输入!
因此,他提出的解决方案实际上与不推荐使用的全局配置$config['global_xss_filtering']=TRUE一样
,不同之处在于添加更多代码和手动工作,为每个$this添加额外的bollean参数-
正确的方法是在视图中使用
set_value
:
此函数默认过滤XSS漏洞:
设置值($field[,$default=''[,$html\u escape=TRUE]]))
首先设置$config['global\xss\u filtering']=FALSE
你不需要也不想一直开着它。此配置设置已被正式弃用。它很可能在将来消失。
其次,如果使用3.0. x版本,则从验证规则中删除xss_clean。它不在正式支持的表单验证规则列表中。
使用输入类从POST、GET、COOKIE或服务器获取数据时,可以使用XSS过滤。大多数输入方法都有第二个参数,可以通过
xss_clean()
运行数据。示例:$this-
问题内容: 我是stackoverflow和CodeIgniter的新手,目前正在尝试在Internet上找到的一些简单代码示例,以开始使用。我现在正在处理的是一种使用CI和Ajax(jQuery)的表单,并将表单的输入保存在数据库中,然后在表单的同一页上显示最新的表单。如果我感到困惑,那是这里的4.7应用示例。最初的源代码位于此处,但为了与最新版本的CI配合使用,我对其进行了修改,并在下面引用了
问题内容: 有谁知道那里有一个好的功能,可以过滤来自表单的通用输入?Zend_Filter_input似乎需要输入内容的先验知识,我担心使用HTML Purifier之类的东西会对性能产生重大影响。 像这样的东西呢:http : //snipplr.com/view/1848/php–sacar-xss/ 非常感谢您的投入。 问题答案: 简单的方法?用途: 您也可以使用: 这样做的好处是,您可以通
我在Codeigniter中为表单验证创建了一个自定义函数。它连接到URL帮助器,我通过制作MY_URL_帮助器实现了这一点。 助手修改: 我如何称呼验证: 美元这个- 语言文件: 但是提交表单时不会显示任何错误信息。如果我将valid_url函数更改为true和false,它将执行该函数。所以它运行这个函数。 如何使错误消息出现?
因为有人把他们自己的问题和我的问题连在一起,我想: 运行表单验证 检查该图像实际上是图像(使用image_validation?) 如果表单验证返回true,则上传图像。 现在,即使我的图像是正确的,但表单验证返回false,我的图像也会被上传。我想阻止这一切。 目前我正在尝试创建一个表单,允许用户选择要上载的文件。我已经为其他输入设置了规则,也为我的图像上传设置了回调。 问题是,不管怎样,只要图
本文向大家介绍Codeigniter检测表单post数据的方法,包括了Codeigniter检测表单post数据的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Codeigniter检测表单post数据的方法。分享给大家供大家参考。具体如下: 希望本文所述对大家基于Codeigniter的php程序设计有所帮助。
我试图在我的Codeigniter项目中创建一组表单验证规则,以便在第一组验证失败时,第二个验证集不应运行。 我在CI手册里找到了这个: 我知道我现在可以分别运行每个集合的验证($this- 问题是,当我使用$config数组时,当表单post失败时,错误不会添加到表单验证类中(因此不会显示)。当我不使用规则集,但只使用$this时,它确实添加并显示了错误- 当使用一组规则输入无效表单数据时,没有