tôi đang gặp rất nhiều vấn đề khi cố gắng để các biến phiên hoạt động sau khi trình duyệt đã đóng
Xin chào đã thử sử dụng
ini_set['session. gc_maxlifetime', 60*60];
ini_set['session. cookie_lifetime', 60*60];
Nhưng họ không làm việc. Có cách nào để giữ cho các biến phiên hoạt động khi đóng trình duyệt không?
Cũng có ai từng nghe nói về việc sử dụng. htaccess để giữ cho các biến phiên hoạt động?
Tôi cần bất kỳ trợ giúp về điều này, tôi không biết phải thử những gì
Như một lưu ý phụ. tôi không có quyền truy cập vào php. ini hoặc httpd. conf
cảm ơn bất cứ ai có thể giúp ghim bằng mọi cách
Steph
Liên kết để bình luậnChia sẻ trên các trang web khác
hỗn xược
Đăng ngày 25 tháng 6 năm 2008
hỗn xược
- cựu nhân viên
- 14. 8k
- 1
- quyên góp cho tôi
- Chia sẻ
Đăng ngày 25 tháng 6 năm 2008
không, bạn không thể giữ phiên hoạt động sau khi đóng trình duyệt. Đó là điểm của phiên. Đó là một “phiên. " Nếu bạn muốn dữ liệu tồn tại sau phiên, bạn có thể xem xét việc tạo cookie bằng cách sử dụng setcookie[. ];
The following code shows how the PHP session works. The function my_session_start[] does almost the same thing as session_start[].
error_reporting[E_ALL];
ini_set['display_errors', true];
ini_set['session.save_path', __DIR__];
my_session_start[];
echo '
session id: '.my_session_id[].'
';echo '
________0';$now = date['H:i:s'];
if [isset[$_SESSION['last_visit_time']]] {
echo '
Last Visit Time: '.$_SESSION['last_visit_time'].'
';
}
echo 'Current Time: '.$now.'
';$_SESSION['last_visit_time'] = $now;
function my_session_start[] {
global $phpsessid, $sessfile;
if [!isset[$_COOKIE['PHPSESSID']] || empty[$_COOKIE['PHPSESSID']]] {
$phpsessid = my_base32_encode[my_random_bytes[16]];
setcookie['PHPSESSID', $phpsessid, ini_get['session.cookie_lifetime'], ini_get['session.cookie_path'], ini_get['session.cookie_domain'], ini_get['session.cookie_secure'], ini_get['session.cookie_httponly']];
} else {
$phpsessid = substr[preg_replace['/[^a-z0-9]/', '', $_COOKIE['PHPSESSID']], 0, 26];
}
$sessfile = ini_get['session.save_path'].'/sess_'.$phpsessid;
if [is_file[$sessfile]] {
$_SESSION = unserialize[file_get_contents[$sessfile]];
} else {
$_SESSION = array[];
}
register_shutdown_function['my_session_save'];
}
function my_session_save[] {
global $sessfile;
file_put_contents[$sessfile, serialize[$_SESSION]];
}
function my_session_id[] {
global $phpsessid;
return $phpsessid;
}
function my_random_bytes[$length] {
if [function_exists['random_bytes']] {
return random_bytes[$length];
}
$randomString = '';
for [$i = 0; $i < $length; $i++] {
$randomString .= chr[rand[0, 255]];
}
return $randomString;
}
function my_base32_encode[$input] {
$BASE32_ALPHABET = 'abcdefghijklmnopqrstuvwxyz234567';
$output = '';
$v = 0;
$vbits = 0;
for [$i = 0, $j = strlen[$input]; $i < $j; $i++] {
$v > $vbits];
$v &= [[1 0] {
$v