任何人都知道如何阻止提交表单的直接URL访问?
所以我有这样的路线
$route['registration']=administration/register
当我输入
时localhost/myweb/registration
存在数据库错误,实际上是因为我们直接通过URL访问它而不提交表单。我已成功在我的表单上设置验证以防止数据库错误,但是如果用户提交我们的表单。当用户输入“注册”时,数据库错误。
好吧,对于某些工作和页面,我只是简单地将SESSION设置为ADMIN或USER,以防止直接访问URL,但我们不能这样做,对吗?
注意:我的表单提交数据很好,我只是不知道如何阻止用户输入“注册”作为提交执行的单词
答案 0 :(得分:0)
在appliaction/config/routes.php
中管理您的路线。喜欢这个
$route['registration']='administration/register';
这会将localhost/myweb/registration
重定向到localhost/myweb/administration/register
。
答案 1 :(得分:0)
要在Codeigniter中停止直接表单提交,您可以使用CSRF保护。
您只需在application / config / config.php中的$ config ['csrf_protection']中启用它
$ config ['csrf_protection'] = TRUE;
并为表单使用form_open()函数。
这将阻止用户直接提交表单。
以下是几个澄清的链接, https://www.codeigniter.com/user_guide/libraries/security.html Codeigniter CSRF - how does it work