0

我正在使用 CodeIgniter。当用户编辑 URL 参数时,我得到一个数据库错误。

我该如何解决这个问题?在 CodeIgniter 中,我在 URL 中传递值 32

http://xyz.com/esebd2/user/link/link_detail/32

如果用户按如下所示进行编辑,

http://xyz.com/esebd2/user/link/link_detail/323434

我得到一个数据库错误。该怎么办?

function link_detail()

    {

        $this->common_head();
        $lid = $this->uri->segment(4);
        $link_data['link_detail'] = $this->linklist->get_detail_link($lid);
            //above line to retrive value from database
        $this->load->view('user/detaillink_view', $link_data);
        $this->common_footer();

    }
4

2 回答 2

5

您无法阻止用户编辑 URL。如果他/她未经授权,您只能阻止他/她访问资源。

至于错误消息:任何用户输入都应该被认为是不可信的,并且应该使用前进行验证。即使您不希望普通用户更改它。

并且如果发生错误,不要输出系统的错误信息。这些仅适用于开发人员而不是用户,因为它们可能包含敏感信息。

于 2011-03-03T11:21:21.897 回答
1

你没有。而且您也不能限制在客户端的 POST 表单上传递的值。检查必须在服务器端完成,并且必须能够处理所有可能的值。

于 2011-03-03T11:27:57.107 回答