任何人都可以告诉我如何在控制器类中使用重定向。
我写在下面的代码:
控制器:-
<?php
class Login extends CI_Controller {
public function result()
{
$name = $this->input->post('name');
$email = $this->input->post('email');
$this->index();
redirect('/success', 'location');
}
}
视图:-
成功.php
<?php
echo "Success page";
?>
它显示错误消息 404 找不到页面。我已经在自动加载类中加载了所有必需的辅助类。
您需要做的就是重定向
例:
public function index() {
redirect('controller_name');
// you may need to set controller name in routes do not need location
redirect('folder/controller_name');
// you may need to set controller name in routes do not need location
}
在Codeigniter中,重定向方法需要3个参数。
redirect('/controller_name/method_name', 'location', 301);
第一个参数是要重定向的 uri 路径。第二个参数是可选的,采用"位置"方法(默认)或"刷新"方法。第三个可选参数是状态代码。您可以查看文档的详细信息。
编辑
function success () {
$data["message"] = "Success";
$this->load->view("success", $data);
}
视图/成功.php
<?php echo $message; ?>
您必须在数组中传递数据,因为代码点火器使用提取方法在视图中传递值,以便您可以将 arrary 键用作变量。
希望对您有用。
您可能有这三个文件
routes.php
$route['success'] = 'your_controller_name/your_method_name';
例如
$route['success'] = 'my_controller/success';
然后在your_controller.php
中,您有一个方法
function success() {
$data['msg'] = "Success";
$this->load->view('success',$data);
}
在您的success.php
之内
<?php echo "<h3>".$msg."<h3>";?>