我正在使用带有友好URL(.htaccess)的Codeigniter 2.1.3。
在控制器中:
public function confirm($key) {
var_dump($this->input->get());
}
但链接_http://site.com/confirm/12345返回“boolean false”。
如何在URL中启用查询字符串,或如何过滤$ key?
我的.htaccess:
RewriteEngine on
RewriteCond $1 !^(index\.php|robots\.txt|files|templates)
RewriteRule ^(.*)$ /index.php?/$1 [L]
答案 0 :(得分:1)
您收到key
作为函数参数,因此您可以这样做:
public function confirm($key) {
echo $key;
}
http://site.com/confirm/12345
将回复12345
。
可以通过$config['permitted_uri_chars']
中的config.php
来过滤此处的字符。
如果您希望将其作为GET
参数接收,并希望对其执行XSS过滤,则网址必须为
http://site.com/confirm?key=12345
并在你的控制器中
public function confirm() {
echo $this->input->get('key', TRUE); // true implies XSS filtering
}
第二种方法要求$config['enable_query_strings']
设置为TRUE
。
答案 1 :(得分:0)
如果您在Codeigniter 2.1.3中询问XSS过滤,请查看以下链接:http://ellislab.com/codeigniter/user-guide/libraries/security.html