start 发表于 2012-7-10 15:04:03

表单提交action跳转到的页面

表单提交action跳转到的页面会出现The action you have requested is not allowed.这是什么原因?请教高人。

浪迹天涯 发表于 2012-7-10 15:19:51

你的代码能否贴上来看看呢?

start 发表于 2012-7-10 15:46:41

代码很简单,就是一个表单提交页面,<form action="/login/checkLogin" method="post">点提交要跳转到checkLogin这个方法中,我点了提交后是跳到这个方法中了但是显示The action you have requested is not allowed。我直接访问这个方法是可以的。

yunnysunny 发表于 2012-7-10 16:40:36

没有加index.php啊

start 发表于 2012-7-10 17:15:41

额,不是路径的问题,我现在猜测是不是服务器设置了post不能提交,因为我现在测着get是可以提交的

ilci 发表于 2012-7-10 23:20:23

The action you have requested is not allowed 是不是方法是私有的了

zdkmyheart1990 发表于 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做为表单开头。希望对你有帮助

630088892 发表于 2012-7-11 17:20:40

学习 学习

songzhenghe 发表于 2012-7-16 09:55:05

{:soso__6840351814126434353_3:}

start 发表于 2012-7-19 10:23:51

zdkmyheart1990 发表于 2012-7-11 11:13 static/image/common/back.gif
是不是这个页面,告诉你是为什么
你是不是在./application/config/config.php中对$config['csrf_protection ...

是你说的这种情况噢,我还想问你个关于这个问题。你知道不用form_open,用html怎么写吗?
页: [1] 2
查看完整版本: 表单提交action跳转到的页面