如何在Codeigniter中从控制器的视图中显示特定的div?

时间:2016-04-21 09:15:01

标签: php codeigniter

我想在视图中使用两个div。如果我以用户身份登录,则我希望显示名为' user'的div。如果以管理员身份登录,我想加载一个名为' admin'的div视图。我想在CodeIgniter中执行此操作。 我的示例代码如下,

if ($Admin == 0)
{
    $data['visible']=$this->login_model->show_menu();
}
else
{
    echo "I'm Admin";
    $this->load->view('home');  
}

4 个答案:

答案 0 :(得分:0)

文档:http://www.codeigniter.com/user_guide/general/views.html

将动态数据添加到视图中 让我们用你的控制器文件来试试吧。打开它添加以下代码:

<?php
class Blog extends CI_Controller {

    function index()
    {
        $data['title'] = "My Real Title";
        $data['heading'] = "My Real Heading";

        $this->load->view('blogview', $data);
    }
}
?>

现在打开您的视图文件并将文本更改为与数据中的数组键对应的变量:

<html>
<head>
<title><?php echo $title;?></title>
</head>
<body>
    <h1><?php echo $heading;?></h1>
</body>
</html>

所以,在你的情况下,你可以这样做:

if ($Admin == 0)
{
    $data['visible']=$this->login_model->show_menu();
}
else
{
    $data['visible']='admin';
    echo "I'm Admin";
    $this->load->view('home', $data);  
}

在你看来:

if($visible == 'admin') {
    echo '<div>Your admin display</div>';
}
else {
    echo '<div>',$visible,'</div>';
}

答案 1 :(得分:0)

取2个变量

$showAdmin$showUser

在控制器中

function showView() {
 $showAdmin = FALSE;
 $showUser = FALSE;
 if ($isAdminLoggedInYourCode) {
  $showAdmin = TRUE;
 }
 else if ($isUserLoggedInYourCode) {
  $showUser = TRUE;
 }
 $data['showAdmin'] = $showAdmin;
 $data['showUser'] = $showUser;
 $this->load->view('home', $data); 
}

在视野中,

if ($showAdmin) {
 // Show Admin div
}
else if ($showUser) {
 // Show User div
}

答案 2 :(得分:0)

你试过这个吗?

if ($Admin == 0)
{
    $data['visible']=$this->login_model->show_menu();
}
else
{
    echo "I'm Admin";
    $this->load->view('home');  
}

答案 3 :(得分:0)

为用户和管理员使用两种不同的视图

class MY_Controller extends CI_Controller 
{

    public function index()
    {
        $data = getSomeStuff(); 
        $admin = checkAdmin();

        if($admin == 0) {
            $this->load->view('user', $data);
        } else {
            $this->load->view('admin', $data);
        }
    }
}