[英]prevent direct access to form post function in codeigniter
我正在使用Codeigniter创建一个Web应用程序。 我遇到的问题是提交表单的功能。 我想做的是通过使用表单中的函数来防止从URL直接访问,因此,如果有人从表单复制操作方法并通过URL输入访问权限,它将拒绝访问。
请指导我。
谢谢。
严格来说,执行if($_POST)
或if($this->input->post())
在90%的情况下都有效,但并非100%正确。 为什么不? 好吧,如果你有,而该人已触发形式实际上不填写任何东西出来后,他们仍然会POST
。
如果你真的想确保有人POST
荷兰国际集团到您的控制器,您需要检查REQUEST_METHOD
。
if($_SERVER['REQUEST_METHOD'] === 'POST')
{
// this is a POST
}
else
{
show_404('not-a-POST!');
}
所有这一切都表示, 很少有时间的时候限制POST
是最好的选择。 实际上,您应该优雅地处理GET
和POST
。
尝试:
if( $this->input->post(null)){
//your form submit code here
}
您只需检查$ _POST变量即可执行此操作,
if(!is_array($_POST) || count($_POST)==0)
{
die('You have no access');
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.