我有一个标准的登录表单,将数据提交给 Codeigniter 函数以进行身份验证。问题是,数据似乎在它到达该函数之前就已经从 HTML 实体中剥离了。现在,请纠正我,如果我我错了,但我认为 config.php 中的参数只与 Codeigniter 函数相关,即 I.E.这将与 $this->input->post NOT $_POST.. 相关。无论哪种方式,在我的 config.php 中我都有
$config['global_xss_filtering'] = FALSE;
如果我提交表单,我在输入字段中提交的数据是:
$_POST['user'] = 'user';
$_POST['password'] = 'password%100';
作为引用,我的表单开始标记是:
<form method="POST" action="<?=site_url('/log-in')?>">
我已经完成了以下功能来测试数据:
echo "<pre>";
print_r($_POST);
echo sha1('userpassword%100') . '<br />';
echo sha1($_POST['username'] . $_POST['password']) . '<br />';
echo sha1($this->input->post('username', FALSE) . $this->input->post('password', FALSE)) . '<br />';
echo "</pre>";
输出为:
Array
(
[username] => user
[password] => password0
)
ad45e6412dd3cec23e47bbb48c874cdcfd6d39e7
fa3279bde5d6aba9ed77c6e5b071ff8dde741b92
fa3279bde5d6aba9ed77c6e5b071ff8dde741b92
所以顶部哈希是正确的,但实际传递的数据似乎去除了 html 实体,即来自密码字段的 %10 - $_POST['password'] 应该是 password%100 NOT password0
谁能告诉我如何获得正确的、未转义的数据?
提前致谢, 基督徒
最佳答案
我也遇到了几乎相同的问题,因为我使用了 $_REQUEST 方法,它对我有用。请尝试此操作,希望对您有所帮助。
关于php - POST 数据正在从 HTML 实体中剥离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11049320/