我正在使用codeigniter,目前我正在进行全身搜索,我想知道这样做的最佳做法是什么。现在我有这个:
$keyword = $this->db->escape_like_str(trim($_POST['keyword']));
之后,执行搜索。这是安全的还是我需要做更多的事情(XSS 过滤已打开)?
我正在使用codeigniter,目前我正在进行全身搜索,我想知道这样做的最佳做法是什么。现在我有这个:
$keyword = $this->db->escape_like_str(trim($_POST['keyword']));
之后,执行搜索。这是安全的还是我需要做更多的事情(XSS 过滤已打开)?
因为您直接访问 _POST 变量,所以您绕过了 CI 的所有 XSS/转义和安全功能。你应该得到的是:
$this->input->post('keyword');
这会被 CI 自动转义,您可以在将其扔到数据库之前执行其他验证。此外,如果您使用活动记录,则所有值也会根据需要自动转义。