2013-05-22 60 views
0

我想從PHP腳本獲取用戶會話到jQuery,但結果是空的。如果我在PHP腳本中使用代碼,它正常工作。試圖讓PHP會話用戶進入JavaScript

我該如何做這項工作?

<script> 
jQuery(document).ready(
    function(){ 
     var user = '<?php echo $_SERVER['LOGON_USER']; ?>'; 

     alert(user); 
     $('#answer83148X78X346').val(user); 
    } 
); 
</script> 
+4

該代碼應該正常工作。這個問題必須在你的應用程序的不同部分 – hek2mgl

+5

可能而不是$ _SERVER ['LOGON_USER']你應該嘗試使用$ _SESSION ['LOGON_USER']。 – NikitaBaksalyar

+2

如果'LOGON_USER'包含單引號會發生什麼,我想知道? ) – raina77ow

回答

1

你可能想先嚐試檢查您使用的變量是否是通過記錄的$_SESSION['LOGON_USER']或諸如此類的東西輸出正確的。在這種情況下,您可以通過檢查生成的HTML頁面的源代碼輕鬆完成此操作。

此外,對JavaScript序列化值時,你應該逃避他們,以防止XSS attacks - 即通過htmlspecialchars功能過濾器值 - 或者更好的序列化作爲JSON,因爲它處理所有類型的值,不僅是字符串。

+1

+1 done ..... :)但是你應該使用'$ _SESSION ['LOGON_USER']'而不是'$ _SERVER' – hek2mgl

0

這裏是我的解決方案:

  1. 我創建用下面的代碼一個authuser.php:

  2. 然後我經由jquery.get從authuser.php結果和設定的檢索文本框與此數據:

    $(文件)。就緒(函數(){

    $獲得(「AUTHU ser.php「,函數(data){
    alert(」Data Loaded:「+ data); $('#answer83148X78X346')。val(data); });