如果您只需要在您的網站內部使用引用信息(即:在您網站的頁面之間,而非外部),則可以手動跟蹤用戶的引用信息。
// Get the full URL of the current page
function current_page_url(){
$page_url = 'http';
if(isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on'){
$page_url .= 's';
}
return $page_url.'://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
}
/* (Assuming session already started) */
if(isset($_SESSION['referrer'])){
// Get existing referrer
$referrer = $_SESSION['referrer'];
} elseif(isset($_SERVER['HTTP_REFERER'])){
// Use given referrer
$referrer = $_SERVER['HTTP_REFERER'];
} else {
// No referrer
}
// Save current page as next page's referrer
$_SESSION['referrer'] = current_page_url();
然後,要訪問引用鏈接,只需使用$referrer
變量。
if(isset($referrer)){
echo 'Referred from "'.$referrer.'"';
echo '<a href="'.$referrer.'">Back</a>';
} else {
echo 'No referrer';
}
這樣一來,如果用戶訪問http://www.example.com/page_1.php
,他們將看到的引薦信息,如果他們的瀏覽器已經提供了,否則沒有引用。然後,當他們訪問http://www.example.com/page_2.php
以及您網站的任何後續頁面時,推薦人都可以訪問。
[HTTP推薦和IE7和IE8(可能重複http://stackoverflow.com/questions/2460490/http-referrer-and-ie7 - 和 - ie8) – 2010-10-19 07:17:58
http://bytes.com/topic/php/answers/853533-http_referer-alternative – 2010-10-19 07:40:11
@Col:感謝您的建議,HTTP_REFERER的任何替代? – pravin 2010-10-19 09:10:14