0

我正在使用带有友好 URL (.htaccess) 的 Codeigniter 2.1.3。

在控制器中:

public function confirm($key) {
   var_dump($this->input->get());
}

但链接 _http://site.com/confirm/12345 返回“布尔假”。

如何在 URL 中启用查询字符串,或者如何过滤 $key ?

我的.htaccess:

RewriteEngine on
RewriteCond $1 !^(index\.php|robots\.txt|files|templates)
RewriteRule ^(.*)$ /index.php?/$1 [L]
4

1 回答 1

1

您收到key作为函数参数,因此您可以这样做:

public function confirm($key) {
   echo $key;
}

http://site.com/confirm/12345会回声12345

可以通过$config['permitted_uri_chars']in过滤其中的字符config.php

如果你想接收它作为GET参数并想对其进行XSS过滤,URL需要是

http://site.com/confirm?key=12345在你的控制器中

public function confirm() {
   echo $this->input->get('key', TRUE);   // true implies XSS filtering
}

第二种方法需要$config['enable_query_strings']设置为TRUE.

于 2013-01-27T14:17:58.687 回答