Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何限制用户编辑URL参数_Php_Codeigniter_Url Parameters - Fatal编程技术网

Php 如何限制用户编辑URL参数

Php 如何限制用户编辑URL参数,php,codeigniter,url-parameters,Php,Codeigniter,Url Parameters,我正在使用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() { $thi

我正在使用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();

    }

您不能阻止用户编辑URL。只有在未经授权的情况下,您才能阻止他/她访问资源

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


如果发生错误,不要输出系统的错误消息。这些内容仅针对开发人员,而非用户,因为它们可能包含敏感信息。

您不能阻止用户编辑URL。只有在未经授权的情况下,您才能阻止他/她访问资源

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


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

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

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

您可能希望至少进行一些简单的错误处理。解析URL参数的代码是什么样子的?比如32被传递给函数link_details如何捕获这些错误而不是输出它们?我可以想象得到。显示此
link\u detail
功能的代码!基本上,在尝试加载之前,您应该检查ID(从URL传递的参数)是否确实存在于数据库中,或者捕获任何数据库错误。数据库查询在哪里执行?您可能希望至少执行一些简单的错误处理形式。解析URL参数的代码是什么样子的?比如32被传递给函数link_details如何捕获这些错误而不是输出它们?我可以想象得到。显示此
link\u detail
功能的代码!基本上,在尝试加载之前,您应该检查ID(从URL传递的参数)是否确实存在于数据库中,或者捕获任何数据库错误。在哪里执行数据库查询?