我有一個CI應用程序,它具有auth控制器和switchuser功能。基本上它只是從URI獲取一個ID,從ID中獲取一些用戶數據,分配一些會話數據然後加載一個視圖。Codeigniter:標題已發送錯誤
function switch_user(){
if(!$this->auth_lib->is_admin()){
$this->session->set_flashdata('status', 'You need to be an administrator to access this page.');
redirect('auth/login');
}
if($id = $this->uri->segment(3)):
$this->load->model('auth_model', 'auth');
$username = $this->auth->get_username($id)->account_name;
$this->session->set_userdata(array('at_id' => $id, 'username' => $username));
$this->session->set_flashdata('status','User switched.');
endif;
$this->load->model('clients_model', 'clients');
$data['users'] = $this->clients->get_at_clients();
$this->load->view('auth/switch', $data);
}
,我發現了以下錯誤:
Message: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\cp\application\controllers\auth.php:130)
130線爲$ username = $這個 - > auth-> get_username($ ID) - > ACCOUNT_NAME;
這裏是模型功能:
function get_username($at_id){
$portal = $this->load->database('warehouse', TRUE);
$portal->select('account_name');
$portal->where('account_id', $at_id);
$portal->from('wh_account');
$query = $portal->get()->result();
return $query[0];
}
我不明白髮生了什麼。當我在本地運行代碼時,我不會收到錯誤。但是當我通過互聯網遠程運行時,我得到了這個頭文件錯誤。
任何人都可以幫助確定問題?
感謝,
比利
UPDATE
我實際上已經把周圍的var_dump的$用戶名= $這個 - > auth-> get_username($ ID) - > ACCOUNT_NAME; 線路導致錯誤。我不知道知道爲什麼,雖然:(
你能證實你在本地啓用了錯誤報告嗎? – JohnP 2011-02-25 09:14:36
你是否在'$ query'中得到結果? – HyderA 2011-02-25 09:24:13
是的,它返回結果當我在本地運行時,用戶切換成功,新用戶名是正確添加到會話 – iamjonesy 2011-02-25 09:29:50