2012-04-30 47 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;