【发布时间】:2016-03-22 16:53:56
【问题描述】:
我在从记录中获取价值时遇到了麻烦。 这就是我想要做的: 1.从db获取记录 2.将查询结果转换为数组 3. 显示数组[0],但报错 undefined offset:1
var_dump() : array(1) { [0]=> object(stdClass)#23 (1) { ["nama"]=> string(9) "Test Name" } }
自己尝试了查询,它返回了一条记录: |用户名|姓名| |Testuser|Testnama|
那么我怎样才能得到'Testuser'呢?
模型/verify_login_model
function getinfo($username) {
$this->db->select('nama', 'username');
$this->db->from('tb_userInfo');
$this->db->where('username', $username);
$this->db->limit(1);
$result = $this->db->get();
if($result->num_rows()==1) {
return $result->result();
} else {
return false;
}
}
控制器/验证登录
public function index(){
$this->load->model('verify_login_model');
$username = $this->input->post('username');
$password = $this->input->post('password');
$result = $this->verify_login_model->verify($username, $password);
if($result == $username) {
$row = $this->verify_login_model->getinfo($username);
echo var_dump($row);
$sessiondata = array('name'=>$row[0], 'username'=>$row[1]);
$this->session->set_userdata($sessiondata);
$name = $sessiondata['name'];
$this->load->view('home_view', $name);
} else {
redirect('login');
}
}
view/home_view
<html>
<head></head>
<body>
welcome, <?php echo $name?>
</body>
</html>
【问题讨论】:
-
您可以在视图内部
echo $this->session->userdata['name']和您可以尝试的模型和return $result->result_array();然后在控制器内部执行$row[0]['nameofyourcolumn']; -
@MarkoKunić 你能解释一下 var_dump() 的结果吗?为什么我得到那个 stdClass#23
-
你试过 return $result->result_array();而不是 return $result->result();在模型中
-
@wolfgang1983 结果是:array(1) { [0]=> array(1) { ["nama"]=> string(9) "Test Name" } }
标签: arrays database codeigniter session stdclass