2011-02-24 116 views
-2

我需要顯示登錄的用戶名。但我在做一個問題php SESSION幫助

所以。

"You have been successfully logged in as <?php echo $_SESSION['username']; ?>.&nbsp" 

但用戶名似乎顯示爲空白..我只是得到登錄爲。

+2

你確定你確實設置了'username'會話變量嗎? – cypher 2011-02-24 12:54:28

+2

你可以顯示你用來設置值的代碼嗎? – 2011-02-24 12:54:36

+2

如果沒有看到更多的代碼,不需要付費。你需要確保會話變量實際上被設置。您還需要在每個腳本實例 – 2011-02-24 12:54:49

回答

2

你有沒有......

  • 寫用戶名到這個實際變量?
  • 撥打此頁面時致電session_start()

如果是的話,您可能需要向我們提供更多的代碼。

+0

會話已設置,並出現在其他地方...我已經使這樣的上述味精出現只有當會話設置..我使用:$ _SESSION [''用戶名'] = $ tmp; – ineedhelp 2011-02-24 12:58:03

0
"You have been successfully logged in as <?php echo $_SESSION['username']; ?>.&nbsp" 

變化(試一試)

echo "You have been successfully logged in as 
$_SESSION['username'] &nbsp" 

+++更多

,首先你需要用session_start()功能啓動會話。請注意,此函數should be called before any output is generated!此函數初始化$ _SESSION超全局數組,您可以在其中存儲數據。例如,讓我們在會話中存儲用戶名。你可以做到這一點,如下所示:

session_start(); 
$_SESSION['username'] = 'ineedhelp'; 

"You have been successfully logged in as <?php echo $_SESSION['username']; ?>.&nbsp" 

你必須確保你的會話中的任何不clean or destroy阻止你的代碼 您有這行破壞或不

//...more your code 
unset($_SESSION['username']);//Check if you clean before output 
"You have been successfully logged in as <?php echo $_SESSION['username']; ?>.&nbsp" 
//...more your code 

Chekc您phpinfo()

如果您在輸出中向下滾動,您將會找到一個完整的部分,其會話設置如下:

session 
Session Support  enabled 
Registered save handlers files user 
Registered serializer handlers php php_binary wddx 

Directive Local Value  Master Value 
session.auto_start Off  Off 
session.bug_compat_42 Off  Off 
+0

我還沒有銷燬 – ineedhelp 2011-02-24 13:13:02

+0

我希望看到更多您的代碼或明確的問題?謝謝 – kn3l 2011-02-24 13:15:08

+0

它有點機密 – ineedhelp 2011-02-24 13:24:41

0

您是否嘗試瀏覽HTML頁面源代碼? ;-)

你試圖把PHP代碼放在字符串內容中。
顯然它不起作用。

echo "You have been successfully logged in as ".htmlspecialchars($_SESSION['username']).".&nbsp" 

會工作。

,或者你可以把它像這樣

?> 
You have been successfully logged in as 
<?php echo htmlspecialchars($_SESSION['username']); ?>.&nbsp 
<? 
+0

YEP ...它在那裏工作很好。 – ineedhelp 2011-02-24 13:07:55

+0

我認爲「工作」的意思是「有'<?php echo $ _SESSION ['username'];?>'從字面上看在頁面源代碼中」,是嗎?它不告訴你什麼? :-) – 2011-02-24 13:10:17

+0

是的......並沒有..找不到錯誤 – ineedhelp 2011-02-24 13:11:51

0

那麼,你必須有session_start()兩個頁面上,即在其中設置,讓你設置$_SESSION['username']之前或得到他們。

並且還嘗試print_r($_SESSION)(它將有助於調試)檢查是否設置了usernamesession_start之後如果有警告消息也檢查日誌。

+0

它工作的很好... – ineedhelp 2011-02-24 13:19:17

+0

@ineedhelp你的意思是它的工作原理,你有沒有解決你的問題 – 2011-02-24 13:23:07

+0

nope ...你說什麼工程罰款...但不是我所需要的 – ineedhelp 2011-02-24 13:24:10