2012-04-30 68 views
0

我首先想提到的是,我沒有尋找替代方法。我其實想弄清楚如何解決這個問題。我相信很多人都熟悉此代碼:PHP從變量中獲取字符串並避免引用

$pageURL = 'http'; 
if ($_SERVER["HTTPS"] == "on") 
{ 
    $pageURL .= "s"; 
} 
    $pageURL .= "://"; 

if ($_SERVER["SERVER_PORT"] != "80") 
{ 
    $pageURL.=_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"]; 
} 
else { 
    $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"]; 
} 

此代碼獲取當前使用的頁面的URL。我想要做的是從URL中獲取一個字符串並將其放入會話中。我使用下面的代碼嘗試:

$_SESSION['pageURL']=$pageURL; 

//and 

$_SESSION['pageURL']= (string)$pageURL; 

到目前爲止,我所有的努力都石沉大海,任何幫助將不勝感激......

+3

爲什麼第一個例子不工作?你是否在頁面頂部調用'session_start()'? – shanethehat

+0

你們都是對的,這是我在第二頁上做的一個語法錯誤,但是我不能說出來,因爲如果這個URL不起作用的話,URL就會一樣。謝謝你們... – Zizo47

回答

3

$pageURL已經是一個字符串,所以:

$_SESSION['pageURL']=$pageURL; 

應該沒有任何問題的工作。

你在某處使用session_start()嗎?

3

$ _SESSION [ 'PAGEURL'] = $ PAGEURL ; //顯然不會工作

這實際上完美地工作......確保你叫session_start()

1

session_start(); $ _SESSION ['pageURL'] = $ pageURL;