2014-11-21 25 views
2

下面的腳本創建了兩個餅乾(SESSION1和會話2),兩會,都含有相同的session_id值。訪問在給定的PHP腳本,但

我怎麼能修改此腳本,以便會話都將是獨立的?

謝謝

<?php 
$t=time(); 
session_name('SESSION1'); 
session_start(); 
$_SESSION['s1_'.$t]=$t; 
echo('SESSION1<pre>'.print_r($_SESSION,1).'</pre>'); 
session_write_close(); 
$old_session=session_name('SESSION2'); 
session_start(); 
$_SESSION['s2_'.(2*$t)]=2*$t; 
echo('SESSION2<pre>'.print_r($_SESSION,1).'</pre>'); 
session_write_close(); 
session_name($old_session); 
session_start(); 
echo('SESSION1<pre>'.print_r($_SESSION,1).'</pre>'); 
?> 

回答

1

你也需要改變會話ID爲每一個新的會話。試試這個:

$t=time(); 

session_name('SESSION1'); 
$s1 = session_id('ID1'); 
session_start(); 
$_SESSION['s1_'.$t]=$t; 
echo('SESSION1<pre>'.print_r($_SESSION,1).'</pre>'); 
session_write_close(); 

$old_session = session_name('SESSION2'); 
$s2 = session_id('ID2'); 
session_start(); 
$_SESSION['s2_'.(2*$t)]=2*$t; 
echo('SESSION2<pre>'.print_r($_SESSION,1).'</pre>'); 
session_write_close(); 

session_name($old_session); 
session_id('ID1'); 
session_start(); 
echo('SESSION1<pre>'.print_r($_SESSION,1).'</pre>'); 
+0

我唯一的問題是我不想指定會話ID,但使用系統生成的。 – user1032531 2014-11-30 15:34:51