一個很抓狂的問題,搞了一個下午沒弄好,請高手指教
問題是驗證碼存在SESSION中,能寫進資料庫,但是在瀏覽器載入不出來。
驗證碼輸出方法所在的控制器 繼承自BackplatformController控制器 ,
在BackplatformController的構造方法裡調用session類
下面是自訂的session類
db = MYSQLDB::getInstance($GLOBALS['config']['database']); } /** * 關閉 * @return bool */ public function sess_close(){ return true; } /** * @param $sess_id * @return string */ public function sess_read($sess_id){ $sql="select sess_data from it_session where sess_id='$sess_id'"; if($row=$this->db->fetchRow($sql)){ return $row['sess_data']; }else{ return ''; } } /** * @param $sess_id * @param $sess_data */ public function sess_write($sess_id,$sess_data){ $expire=time(); //存在則更新 $sql="insert into it_session values('$sess_id','$sess_data','$expire') on duplicate key update sess_data='$sess_data', expire='$expire'"; if($result=$this->db->myquery($sql)){ return true; } } /** * @param $sess_id */ public function sess_destroy($sess_id){ $sql="delete from it_session where sess_id='$sess_id'"; $result=$this->db->myquery($sql); } /** * @param $ttl * @return mixed */ public function sess_gc($ttl){ $now = time(); $last = $now -$ttl; //刪除到期session $sql = "delete from it_session where expire < $last"; return $this->db->myquery($sql); }}
下面是驗證碼存入session
回複內容:
一個很抓狂的問題,搞了一個下午沒弄好,請高手指教
問題是驗證碼存在SESSION中,能寫進資料庫,但是在瀏覽器載入不出來。
驗證碼輸出方法所在的控制器 繼承自BackplatformController控制器 ,
在BackplatformController的構造方法裡調用session類
下面是自訂的session類
db = MYSQLDB::getInstance($GLOBALS['config']['database']); } /** * 關閉 * @return bool */ public function sess_close(){ return true; } /** * @param $sess_id * @return string */ public function sess_read($sess_id){ $sql="select sess_data from it_session where sess_id='$sess_id'"; if($row=$this->db->fetchRow($sql)){ return $row['sess_data']; }else{ return ''; } } /** * @param $sess_id * @param $sess_data */ public function sess_write($sess_id,$sess_data){ $expire=time(); //存在則更新 $sql="insert into it_session values('$sess_id','$sess_data','$expire') on duplicate key update sess_data='$sess_data', expire='$expire'"; if($result=$this->db->myquery($sql)){ return true; } } /** * @param $sess_id */ public function sess_destroy($sess_id){ $sql="delete from it_session where sess_id='$sess_id'"; $result=$this->db->myquery($sql); } /** * @param $ttl * @return mixed */ public function sess_gc($ttl){ $now = time(); $last = $now -$ttl; //刪除到期session $sql = "delete from it_session where expire < $last"; return $this->db->myquery($sql); }}
下面是驗證碼存入session
已經搞定了,ob緩衝沒有清除