gpt4 book ai didi

php - 代码点火器 : How to show logged In User Name in every methods (or view page) without repeating same code in every function

转载 作者:行者123 更新时间:2023-11-29 10:53:00 25 4
gpt4 key购买 nike

我试图通过在 session 中存储数据来在每个 View 页面中显示记录的用户名。

<小时/>

但是我必须在每个函数中编写相同的两行..我正在获取用户数据,但是还有其他方法可以做到这一点吗?因为我认为重复相同的代码不太好。

Controller

所以,这是我的索引函数,其中有电子邮件,还有一个用于从数据库获取用户数据的模型。

function index() {
$email = $this->session->userdata('email');
$data['details'] = $this->Perfect_mdl->get_login_user_detail($email);

$data['items_data'] = $this->Visa_mdl->get_items_name();
$data['title'] = "Hotels";
$this->load->view('include/header',$data);
$this->load->view('hotels/visa',$data);
$this->load->view('include/footer');
}

第二个函数

现在,这里我必须做同样的事情来显示用户名

function visa_dashboard($item_id = NULL) {
$email = $this->session->userdata('email');
$data['details'] = $this->Perfect_mdl->get_login_user_detail($email);

$data['title'] = "Company Lists";
$result = $this->Visa_mdl->get_items_company_list($item_id);
$result1 = $this->Visa_mdl->get_items_name_in_dash($item_id);
$data['items'] = $result1;
$data['items_company_data'] = $result;

$data['items_data'] = $this->Visa_mdl->get_items_name();
// $data['items_company_data'] = $this->Visa_mdl->get_items_company_list($id);
$this->load->view('include/header',$data);
$this->load->view('hotels/dashboard',$data);
$this->load->view('include/footer');
}

我对 Codeigniter 非常陌生。如何做到这一点?

最佳答案

将这两行代码放入 Controller 的构造函数中,它在所有方法中都可用。

 <?php
class Welcome extends CI_Controller {

public function __construct()
{
$this->load->model('perfect_mdl');
$this->email = $this->session->userdata('email');
$this->data['details'] = $this->Perfect_mdl->get_login_user_detail($email);
}
}

关于php - 代码点火器 : How to show logged In User Name in every methods (or view page) without repeating same code in every function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43416109/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com