Php 表单动作错误
我正在尝试使用CodeIgniter创建一个用户登录系统。以下是表单代码(登录视图): 如您所见,我在Php 表单动作错误,php,html,codeigniter,Php,Html,Codeigniter,我正在尝试使用CodeIgniter创建一个用户登录系统。以下是表单代码(登录视图): 如您所见,我在测试版/之后得到了一个问号“?” 这也影响了进一步的过程,即,它被重定向到site.com/beta/?main/login\u validation,而该验证根本不验证数据。该函数使用base\u url的值,位于应用程序/config/config.php中。您的基本url似乎设置不正确或根本没有设置。base\u url值应作为。如果未设置,则CodeIgniter将猜测正确的值: 如果未
测试版/
之后得到了一个问号“?
”
这也影响了进一步的过程,即,它被重定向到site.com/beta/?main/login\u validation
,而该验证根本不验证数据。该函数使用base\u url
的值,位于应用程序/config/config.php
中。您的基本url
似乎设置不正确或根本没有设置。base\u url
值应作为。如果未设置,则CodeIgniter将猜测正确的值:
如果未设置,则CodeIgniter将猜测协议、域
和安装路径
要设置
base\u url
:打开application/config/config.php
并输入站点的base\u url
值。要输入的值通常位于index.php
文件所在的位置,后面是斜杠:
指向CodeIgniter根目录的URL。通常这是您的基本URL,
带尾随斜杠
例如:
$config['base_url'] = 'http://www.yoursite.com/';
在
application/config/config.php
中设置的base\u url
是什么?设置为nothing$config['base\u url']='';您的基本url
。form_open
函数使用此值,因此如果缺少此值,则可能是导致错误的原因。尝试将其设置为CodeIgniter根的URL,并带有一个尾随斜杠。目前,CodeIgniter正试图猜测这一点(而且是弄错了)!我已经将uri_协议设置为$config['uri_protocol']=“REQUEST_uri”;使用mod_重写。我将请求URI更改为自动并修改了我的.htaccess。现在它起作用了。虽然我仍然不明白为什么mod rewrite在子域上不起作用。谢谢你的帮助。!不用担心——我想做出这样的改变有助于CodeIgniter正确猜测URL。尽管如此,我仍然建议设置base\u url
。如果您正在切换域等,可能需要一点时间进行更改。但根据我的经验,这似乎要可靠得多,因为CodeIgniter并不总是正确地猜测值!
"form action="http://site.com/beta/?main/login_validation" method="post" "
$config['base_url'] = 'http://www.yoursite.com/';