Php 无法加载codeigniter 3中的视图错误
控制器:Php 无法加载codeigniter 3中的视图错误,php,codeigniter,Php,Codeigniter,控制器: class Welcome extends CI_Controller { public function __construct() { parent::__construct(); if(!is_logged_in()){ redirect('admin'); } } public function index() { $this->load-
class Welcome extends CI_Controller {
public function __construct()
{
parent::__construct();
if(!is_logged_in()){
redirect('admin');
}
}
public function index()
{
$this->load->view('templates\sub_header');
$this->load->view('welcome_message');
$this->load->view('templates\footer');
}
}
当调用控制器时,只需按顺序加载三个视图。相反,我不断收到错误“无法加载请求的文件:templates\sub_header.php”
需要注意的重要一点是,这段代码在localhost上运行得非常好,但在godaddy子域上出现了问题
我在配置文件中定义了一个基本url,它似乎工作得很好
另一方面,另一个控制器在任何地方都工作正常:
public function index()
{
if( is_logged_in() )
{
redirect('welcome');
}
$this->form_validation->set_error_delimiters('<div class="text-danger">', '</div>');
$this->form_validation->set_rules('username', 'UserName', 'required');
$this->form_validation->set_rules('password', 'Password', 'required|min_length[4]');
$this->load->view('templates/header');
if($this->form_validation->run() == FALSE)
{
$this->load->view('auth/login_view');
}
else
{
// Check the entered value against db
$this->load->model('auth/admin_model');
$result = $this
->admin_model
->verify_user($this->input->post('username'),$this->input->post('password'));
if($result != false)
{
$username = $this->input->post('username');
$status = $result->status;
if($status == 1)
{
$user_roles = $this->admin_model->get_user_access_roles($result->id);
$this->session->set_userdata('username', $username);
$this->session->set_userdata('user-management',$user_roles->user_management);
$this->session->set_userdata('client-information',$user_roles->client_information);
$this->session->set_userdata('master-metadata',$user_roles->master_metadata);
$this->session->set_userdata('reports',$user_roles->reports);
redirect('welcome');
}
else
{
$data['error_message'] = "Account is disabled. Get in touch with system administrator !";
$this->load->view('auth/login_view',$data);
}
}
else
{
$data['error_message'] = "Invalid UserName or Password. Try Again !";
$this->load->view('auth/login_view',$data);
}
}
$this->load->view('templates/footer');
}
公共功能索引()
{
如果(是否已登录)
{
重定向(“欢迎”);
}
$this->form_validation->set_error_分隔符(“”,);
$this->form_validation->set_规则('username','username','required');
$this->form_validation->set_rules('password','password','required | min_length[4]);
$this->load->view('templates/header');
如果($this->form\u validation->run()==FALSE)
{
$this->load->view('auth/login_view');
}
其他的
{
//对照db检查输入的值
$this->load->model('auth/admin_model');
$result=$this
->管理模式
->验证用户($this->input->post('username'),$this->input->post('password');
如果($result!=false)
{
$username=$this->input->post('username');
$status=$result->status;
如果($status==1)
{
$user\u roles=$this->admin\u model->get\u user\u access\u roles($result->id);
$this->session->set_userdata('username',$username);
$this->session->set_userdata('user-management',$user_roles->user_management);
$this->session->set_userdata('client-information',$user\u roles->client\u information);
$this->session->set_userdata('master-metadata',$user_roles->master_metadata);
$this->session->set_userdata('reports',$user_roles->reports);
重定向(“欢迎”);
}
其他的
{
$data['error_message']=“帐户已禁用。请与系统管理员联系!”;
$this->load->view('auth/login\u view',$data);
}
}
其他的
{
$data['error_message']=“无效的用户名或密码。请重试!”;
$this->load->view('auth/login\u view',$data);
}
}
$this->load->view('templates/footer');
}
视图在Admin controller中完全加载,但在登录后,当Admin controller重定向到welcome controller时,视图停止加载。控制器之间的唯一区别是,在Admin controller中我调用header,而在welcome中我调用sub_header,但这两个文件都存在于views文件夹中。将
\
更改为此/
public function index()
{
$this->load->view('templates/sub_header'); # Changed
$this->load->view('welcome_message');
$this->load->view('templates/footer'); # Changed
}
并确保文件存在将
\
更改为此/
public function index()
{
$this->load->view('templates/sub_header'); # Changed
$this->load->view('welcome_message');
$this->load->view('templates/footer'); # Changed
}
和确保文件存在这是一个愚蠢的错误,但您能否帮助我理解为什么它没有在本地主机上抛出错误,而只是在远程服务器上抛出错误。可能您正在使用windows server。所以没有伤害。但如果Linux服务器是一个问题,@Saurabh Hapy to help:)这是一个愚蠢的错误,但您能帮助我理解为什么它没有在本地主机上抛出错误,而只是在远程服务器上抛出错误。可能您正在使用windows server。所以没有伤害。但如果Linux服务器是个问题,@Saurabh Hapy帮助:)