我还不熟悉CI,所以请耐心等待。但是我在将数据显示在用户配置文件上时遇到了一些麻烦。
型号:
public function user_data()
{
$age = $this->session->userdata('age');
$data = array();
$this->db->select('*');
$this->db->from('users');
$this->db->where('age', $age);
$query = $this->db->get();
return $query->row();
}
控制器:
public function user()
{
$this->load->model('user_model');
$data['row'] = $this->user_model->user_data();
$this->load->view('templates/header');
$this->load->view('pages/profile', $data);
$this->load->view('templates/footer');
}
查看:
<h2><?php echo $_SESSION['username'];?>'s Profile</h2>
</br>
<body>
<h4>Age: <?php echo $row['age'];?></h4>
显示用户名,但年龄结果不显示。此时也没有显示任何错误,所以我有点困惑。
答案 0 :(得分:0)
在行
之后尝试控制器中的echo$this->db->last_query();
$data['row'] = $this->user_model->user_data();
它将帮助您通过活动记录执行实际查询,并通过phpmyadmin
您
答案 1 :(得分:0)
用户row_array
从数据库中获取行数组。
public function user_data()
{
$age = $this->session->userdata('age');
$this->db->select('*');
$this->db->from('users');
$this->db->where('age', $age);
$query = $this->db->get();
$data = $query->row_array(); //<---- Change this
return $data;
}
哟需要先在控制器中加载模型。
public function user()
{
$this->load->model('user_model');
$row = $this->user_model->user_data();
$this->load->view('templates/header');
$this->load->view('pages/profile', ['row' => $row]); //<--- Try this way
$this->load->view('templates/footer');
}
<h2><?php echo $_SESSION['username'];?>'s Profile</h2>
</br>
<body>
<h4>Age: <?php echo $row['age'];?></h4>
要获取会话数据,您需要执行以下操作:
这是如何在会话中添加数据的。 示例:在登录过程中创建用户登录时,您可以创建用户会话。
$setSession_data = array(
'username' => $username,
'age' => $age
);
$this->session->set_userdata('your_session_name', $setSession_data);
这就是你如何检索会话数据。
$session_data = $this->session->userdata('your_session_name');
print_r($session_data);
echo $session_data['username'];
echo $session_data['age'];
有关详细信息,请参阅此Helper link
答案 2 :(得分:0)
确保自动加载会话库。 首先检查你得到的内容。
<input class="form-control" type="text" readonly ng-model="pageContent._id" />
检查您的查询实际执行的内容。
$this->session->userdata('variable name');
最后查看你的$ row变量
$this->db->last_query();
答案 3 :(得分:0)
您是否在从数据库获取数据时尝试过其他年龄值?您的视图上未打印年龄的原因可能是数据库中没有返回数据。 您需要 - 我们需要 - 查看针对数据库执行的查询。所以,
$this->db->last_query();
你在哪里获得设置会话变量'username'的价值?