2016-02-08 28 views
-2

閱讀在一個test1.php我有這樣的:會話數據不能從另一個窗口

<?php 
    echo "Session variables are about to be set."; 
    // Set session variables 
    $_SESSION["animal"] = "cat"; 
    echo "Session variables are set."; 
    echo "Favorite animal is " . $_SESSION["animal"] . "."; 
?> 

<div ms_positioning="text2D" class="style7"><a href="javascript:winOpen();" test2.php="">Contact Information</a></div> 

<script> 
function winOpen() { 

    window.open("/test2.php",null,"scrollbars=no,resizable=no,width=600,height=300,top=100,left=100"); 

} 
</script> 

在test2.php,我有這樣的:

<?php 
    // Echo session variables that were set on previous page 
    echo "Favorite animal is " . $_SESSION["animal"] . "."; 
?> 

但數據沒有顯示出來在test2.php上。它在test1.php上回顯了。

有什麼建議嗎?

+2

你處處啓動會話?沒有?做。 http://php.net/manual/en/function.session-start.php –

回答

2

你test1.php應該是這樣的:

<?php 
    session_start(); // In case you come back to test1.php 
    echo "Session variables are about to be set."; 
    // Set session variables 
    $_SESSION["animal"] = "cat"; 
    echo "Session variables are set."; 
    echo "Favorite animal is " . $_SESSION["animal"] . "."; 
?> 

<div ms_positioning="text2D" class="style7"><a href="javascript:winOpen();" test2.php="">Contact Information</a></div> 

<script> 
function winOpen() { 

    window.open("/test2.php",null,"scrollbars=no,resizable=no,width=600,height=300,top=100,left=100"); 

} 
</script> 

而且test2.php應該是這樣的:

<?php 
    session_start(); 
    // Echo session variables that were set on previous page 
    echo "Favorite animal is " . $_SESSION["animal"] . "."; 
?> 
2

擺在最前一頁代碼 session_start();

試試這個

<?php 
session_start(); 
// Echo session variables that were set on previous page 
echo "Favorite animal is " . $_SESSION["animal"] . "."; 
?> 
3

你需要調用

session_start(); 

功能在腳本的開始。

相關問題