用户
 找回密码
 入住 CI 中国社区
搜索
查看: 6850|回复: 12
收起左侧

[HELP] 表单提交action跳转到的页面

[复制链接]
发表于 2012-7-10 15:04:03 | 显示全部楼层 |阅读模式
表单提交action跳转到的页面会出现The action you have requested is not allowed.这是什么原因?请教高人。
发表于 2012-7-10 15:19:51 | 显示全部楼层
你的代码能否贴上来看看呢?
 楼主| 发表于 2012-7-10 15:46:41 | 显示全部楼层
代码很简单,就是一个表单提交页面,<form action="/login/checkLogin" method="post">点提交要跳转到checkLogin这个方法中,我点了提交后是跳到这个方法中了但是显示The action you have requested is not allowed。我直接访问这个方法是可以的。
发表于 2012-7-10 16:40:36 | 显示全部楼层
没有加index.php啊
 楼主| 发表于 2012-7-10 17:15:41 | 显示全部楼层
额,不是路径的问题,我现在猜测是不是服务器设置了post不能提交,因为我现在测着get是可以提交的
发表于 2012-7-10 23:20:23 | 显示全部楼层
The action you have requested is not allowed 是不是方法是私有的了
发表于 2012-7-11 11:13:52 | 显示全部楼层
是不是这个页面,告诉你是为什么
你是不是在./application/config/config.php中对$config['csrf_protection'] = TRUE;进行设置了呢,$config['csrf_protection'] = FALSE;是默认值,如果这样设置$config['csrf_protection'] = TRUE; 在写from表的的时候你就必须用form_open这个辅助函数
看一下这个函数生成的代码你就知道

<!-- <form action="http://szhufu.com/admin/site/updateSiteBase" method="post" > -->
        <form action="http://szhufu.com/admin/site/updateSiteBase" method="post" accept-charset="utf-8">
<div class="hidden">
<input type="hidden" name="csrf_test_name" value="347c97035fda9fa7ffca65319d82890b" />
看到没生成了input-hidden 而不用form_open的情况如下
<form action="http://szhufu.com/admin/site/updateSiteBase" method="post" >
所以要么你把$config['csrf_protection'] = TRUE;改成$config['csrf_protection'] = FALSE;
要么就使用form_open做为表单开头。希望对你有帮助
未命名.jpg
发表于 2012-7-11 17:20:40 | 显示全部楼层
学习 学习
发表于 2012-7-16 09:55:05 | 显示全部楼层
{:soso__6840351814126434353_3:}
 楼主| 发表于 2012-7-19 10:23:51 | 显示全部楼层
zdkmyheart1990 发表于 2012-7-11 11:13
是不是这个页面,告诉你是为什么
你是不是在./application/config/config.php中对$config['csrf_protection ...

是你说的这种情况噢,我还想问你个关于这个问题。你知道不用form_open,用html怎么写吗?

本版积分规则