我正在尝试在表单操作中使用url而不在codeigniter中使用表单助手,但它不起作用。
<form method="post" action="<?php echo base_url().'test'; ?>">
<form method="post" action="/main_controller/test">
控制器功能
public function test(){
echo "test function";
}
我得到的错误
答案 0 :(得分:3)
应该是
<form method="post" action="<?php echo base_url()?>index.php/main_controller/test">
以及base_url()
也应该定义为(application/config/config.php
)
https://stackoverflow.com/
^ on the end
$config['base_url'] = 'https://stackoverflow.com/'; # Line 26 if version 3.0+
<?php echo base_url()?>index.php/main_controller/test
^ ^ ^ ^
base URL index Controller Name Method name
答案 1 :(得分:1)
N
像这样使用并在 http://www.example.com/ config.php文件中定义基本网址
答案 2 :(得分:0)
要使用#temp
,您必须先加载URL Helper。这可以在base_url()
(第67行)中完成:
application/config/autoload.php
或者,在控制器中手动:
$autoload['helper'] = array('url');
然后改变
$this->load->helper('url');
到
<form method="post" action="<?php echo base_url().'test'; ?>">
最后在application / config / config.php中添加基本URL。例如,
<form method="post" action="<?php echo base_url()?>index.php/main_controller/test">
默认情况下,index.php文件将包含在您的网址中:您可以使用$config['base_url'] = 'http://example.com/';
从操作网址中删除index.php。请阅读documenation
答案 3 :(得分:0)
您应该做的第一件事是转到您的 Codeigniter 项目文件夹中的以下目录;
your_codeigniter_project_name/application/config/config.php
并寻找类似的配置代码;
$config['base_url'] = 'http://localhost/';
现在确认您的基本 URL 配置指向您的项目目录;如果它是在您的本地主机上运行的项目,则链接应如下所示;
$config['base_url'] = 'http://localhost/your_project_name/';
现在关于表单操作;如果您的 Codeigniter 项目文件夹的根目录中已经有一个 .htacess 文件,那么您的表单操作 URL 应该如下编写;
<form method="post" action="<?php echo base_url()?>main_controller/test">
如果你的项目根目录中没有 .htaccess 文件,那么表单操作 URL 应该是;
<form method="post" action="<?php echo base_url()?>index.php/main_controller/test">