2011-08-26 76 views
0

我如何檢查用戶是否不是來自同一個網站?例如,如果用戶將瀏覽器中的URL鍵入到直接頁面,則他們將訪問該頁面,而不會從站點中的其他頁面訪問。CakePHP:如果用戶不是來自同一個網站

因此,像:

if(!user not from same url) 
{ 
//do some stuff 
} 

回答

0
$referer = env('HTTP_REFERER'); 

if(empty($referer) && $this->Session->check('Auth.redirect') == false) 
{ 
    echo 'user didn\'t come website and wasn\'t redirect from the auth component'; 
} 
1

$this->referer()在控制器?

編輯:嗯,你的目的,你可以直接使用此:

$referer = env('HTTP_REFERER'); 
if(empty($referer)){ echo 'jazz'; } 

因爲$這個 - >引用者()的行爲有點不同。它不會返回false或null或空字符串。

+0

給了我這個錯誤:'致命錯誤:在寫context'不能使用函數的返回值 – Cameron

+0

噢,固定;) –

+0

這當用戶從一個重定向發送,如工作時除了大請求身份驗證訪問控制器。 CakePHP不會將其作爲引用來分類,因此當用戶實際來自站點但已自動重定向時,代碼將執行!任何想法如何解決這個問題? – Cameron

相關問題