Php 如何在codeigniter中从主模板加载所选函数
是否可以仅在我的主模板中加载选定的方法?我只想从我的主机加载头和一些脚本,避免模板的其余部分Php 如何在codeigniter中从主模板加载所选函数,php,html,codeigniter,codeigniter-3,loadview,Php,Html,Codeigniter,Codeigniter 3,Loadview,是否可以仅在我的主模板中加载选定的方法?我只想从我的主机加载头和一些脚本,避免模板的其余部分 <?php defined('BASEPATH') OR exit('No direct script access allowed'); class Auth extends MY_Controller { public function index(){ $this->data['page_title'] = "User Login"; $t
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Auth extends MY_Controller {
public function index(){
$this->data['page_title'] = "User Login";
$this->load->view('templates/master', $this->data);
}
public function login(){
$email = $_POST['email'];
$password = $_POST['password'];
$data = $this->User_model->login ($email, $password);
if($data){
$this->session->set_userdata('users', $data);
redirect('users');
}
else{
$this->session->set_flashdata
('loginfail','<div class="alert alert-danger"><a href="#" class="close" data-dismiss="alert" aria-label="close">×</a>
<strong>Danger !</strong> Invalid Email or Password .</div>');
return redirect("auth");
}
}
}
这是我的登录控制器,我只想加载页眉和页脚脚本,我想避免主模板中的一些函数
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Auth extends MY_Controller {
public function index(){
$this->data['page_title'] = "User Login";
$this->load->view('templates/master', $this->data);
}
public function login(){
$email = $_POST['email'];
$password = $_POST['password'];
$data = $this->User_model->login ($email, $password);
if($data){
$this->session->set_userdata('users', $data);
redirect('users');
}
else{
$this->session->set_flashdata
('loginfail','<div class="alert alert-danger"><a href="#" class="close" data-dismiss="alert" aria-label="close">×</a>
<strong>Danger !</strong> Invalid Email or Password .</div>');
return redirect("auth");
}
}
}
这是我的登录视图
<body class="bg-gradient-primary">
<div class="container">
<!-- Outer Row -->
<div class="row justify-content-center">
<div class="col-xl-10 col-lg-12 col-md-9">
<div class="card o-hidden border-0 shadow-lg my-5">
<div class="card-body p-0">
<!-- Nested Row within Card Body -->
<div class="row">
<div class="col-lg-6 d-none d-lg-block bg-login-image"></div>
<div class="col-lg-6">
<div class="p-5">
<div class="text-center">
<h1 class="h4 text-gray-900 mb-4">Welcome Back!</h1>
</div>
<form method="POST" action="<?php echo base_url(); ?>index.php/Auth/login"> <div class="alert alert-error">
<?php
if($error=$this->session->flashdata('loginfail'))
{
echo $error;
}
?>
<div class="form-group">
<input placeholder="Email" class="form-control form-control-user" type="email" name="email" required>
</div>
<div class="form-group">
<input placeholder="Password" type="password" class="form-control form-control-user" name="password" required>
</div>
<div class="form-group">
<div class="custom-control custom-checkbox small">
<input type="checkbox" class="custom-control-input" id="customCheck">
<label class="custom-control-label" for="customCheck">Remember Me</label>
</div>
<button class="btn btn-primary btn-user btn-block" type="submit" > Login</button>
<hr>
</form>
欢迎回来!
您必须更改主视图模板以实现此目标,一种方法是设置与登录方法匹配的条件逻辑,例如,如果页面标题
值为用户登录
,则不加载正文内容,而是提供登录视图模板,否则加载主正文内容,等等: