【发布时间】:2017-05-03 05:52:58
【问题描述】:
我正在尝试检索公司名称并将其存储在 CodeIgniter 的会话中,但我无法从 pr_users_details 表中检索公司字段。
row1->company 应该给我公司名称,但事实并非如此。
<?php
Array
(
[session_id] => ed64aacc3975c359615569ff9c0bedb1
[ip_address] => ::1
[user_agent] => Mozilla/5.0 (Windows NT 6.2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36
[last_activity] => 1493791463
[user_data] =>
[is_admin_logged_in] => 1
[admin_user_name] => admin@google.com
[admin_userpass] => 65e1b655a6d6f4cbed20554d3b52521a743afdc0
[admin_id] => 23
[admin_lastlogin] => 03-05-2017 07:30:37
[admin_lastloginip] => ::1
[lastrefresh] => 1493791470
[company] =>
)
?>
这里的公司没有价值
function check_admin_login()
{
$this->db->where('username', trim($this->input->post('username')));
$this->db->where('userpass ', sha1(trim($this->input->post('userpass'))));
$this->db->where('status', '1');
$this->db->where('deleted', '0');
$this->db->select('*');
$query = $this->db->get($this->myTables['users']);
if ($query->num_rows() > 0) {
$row = $query->row();
$this->db->where('userid', $row->id);
$this->db->select('firstname,lastname,profileimage,company');
//$query1 = $this->db->query("Select * from pr_users_details where userid = '".$row->id."'");
$query1 = $this->db->get($this->myTables['users_details']);
$row1 = $query1->row();
$newdata = array(
'is_admin_logged_in' => true,
'admin_user_name' => $row->username,
'admin_userpass' => $row->userpass,
'admin_id' => $row->id,
'admin_lastlogin' => date("d-m-Y H:i:s", $row->lastlogin),
'admin_lastloginip' => $row->lastloginip,
'lastrefresh' => time(),
'company' => $row1->company
);
$company = $row1->company;
$this->session->set_userdata($newdata);
$companyName = $this->session->userdata('company');
echo "<pre>";
print_r($this->session->all_userdata());
echo "</pre>";
die;
$this->update_admin_login_time($this->session->userdata('admin_id'));
$this->admin_init_elements->set_global_user($row->username, $row->userpass);
if ($this->input->post('remember')) {
$cookie = array('name' => 'username', 'value' => $row->username, 'expire' => time() + 7600, 'secure' => false);
$this->input->set_cookie($cookie);
}
$name = $row1->firstname . ' ' . $row1->lastname;
$cookie1 = array('name' => 'name', 'value' => $name, 'expire' => time() + 7600, 'secure' => false);
$this->input->set_cookie($cookie1);
$cookie2 = array('name' => 'image', 'value' => $row1->profileimage, 'expire' => time() + 7600, 'secure' => false);
$this->input->set_cookie($cookie2);
return 'Login Successful';
} else {
return 'Incorrect Username or Password.';
}
}
打印会话时我得到这个:
【问题讨论】:
-
“但不是。” - 想详细说明一下吗?您是否收到错误消息,或者那里的其余数据,只是没有公司名称?
-
另外:请改进代码的格式。减少过多的缩进,因此不需要水平滚动。
-
完成,谢谢建议
-
print_r($row1)并发布数据
标签: php mysql codeigniter codeigniter-2 codeigniter-3