Php 编码点火器控制器问题
这是我的AdminBase.phpPhp 编码点火器控制器问题,php,codeigniter,Php,Codeigniter,这是我的AdminBase.php <?php class AdminBase extends Controller{ public function __construct(){ parent::Controller(); $admin = $this->session->userdata('username'); if(!isset ($admin)){ redirect('/Site/Ho
<?php
class AdminBase extends Controller{
public function __construct(){
parent::Controller();
$admin = $this->session->userdata('username');
if(!isset ($admin)){
redirect('/Site/Home');
}
}
}
您需要将这一行放在Admin.php的顶部
<?php
// Include Base Controller
include ('AdminBase.php');
class Admin extends AdminBase{
public function index(){
echo "You are in Admin panel!!";
}
}
您需要将这一行放在Admin.php的顶部
<?php
// Include Base Controller
include ('AdminBase.php');
class Admin extends AdminBase{
public function index(){
echo "You are in Admin panel!!";
}
}
还有另一种方法,就是在application/libralies上创建文件名MY_Controller.php
然后像这样创造
<?php
class AdminBase extends Controller {
public function __construct(){
parent::Controller();
$admin = $this->session->userdata('username');
if(!isset ($admin)){
redirect('/Site/Home');
}
}
}
还有另一种方法,就是在application/libralies上创建文件名MY_Controller.php
然后像这样创造
<?php
class AdminBase extends Controller {
public function __construct(){
parent::Controller();
$admin = $this->session->userdata('username');
if(!isset ($admin)){
redirect('/Site/Home');
}
}
}
谢谢Muhit,你能告诉我为什么即使没有设置会话变量,我也会在管理面板中看到你吗?您发现我的AdminBase类有任何错误吗?如果(!isset($admin))始终为false,则找到。因为$this->session->userdata('username');将始终返回一个值或布尔值,因此它不应该是“!isset()”,而可能是“empty()”或检查null或检查false等。在CodeIgnitor中使用include
是一种不好的做法,您需要创建一个库,然后加载它。感谢Muhit,你能告诉我为什么即使没有设置会话变量,我也会看到你在管理面板中?您发现我的AdminBase类有任何错误吗?如果(!isset($admin))始终为false,则找到。因为$this->session->userdata('username');将始终返回一个值或布尔值,因此它不应该是“!isset()”,而可能是“empty()”或检查null或检查false等。在控制器内使用include
在CodeIgnitor中是一种不好的做法,你需要创建一个库,然后加载它。你可以在codeingniter中使用hmvc,这很好,然后扩展类。你可以在codeingniter中使用hmvc,这很好,然后扩展类