2012-04-11 78 views
3

下面的代碼:會議將不會留在重定向

final public function login($email) { 
    $this->email = mysql_real_escape_string($email); 
    $this->q = "SELECT id FROM users WHERE mail = '$this->email'"; 
    $this->r = mysql_query($this->q); 
    $this->id = mysql_result($this->r, 0); 
    $_SESSION['id'] = "$this->id"; 

    header('Location: me.php'); 
    exit; 
    } 

我不知道,當我重定向會話不留。我在當前頁面上回應了它,並顯示出來。任何解決方案我有一個全局的命名空間,所以會話被設置在所有文件中。

+0

你開始使用'session_start'會議? – Ryan 2012-04-11 23:18:46

+0

你叫這個頁面和其他_every_頁面上'在session_start()''那裏$ _SESSION'訪問? – 2012-04-11 23:18:57

+1

'$ _SESSION [ 'ID'] = 「$這 - > ID」'?請不要......還有,你爲什麼要把一切都變成實例變量?這是否有一個很好的理由,還是這是試圖成爲面向對象? – Ryan 2012-04-11 23:21:07

回答

0

每當你用會話在PHP處理,你應該使用session_start()會話的數據加載到內存中。

呼叫session_start()每個頁面,你只有一次。