Tôi đang làm việc với wamp2.0 - PHP 5.3, apache 2.2.11 nhưng phiên của tôi không lưu trữ dữ liệu.Phiên làm việc PHP không hoạt động
Tôi có một trang mà chấp nhận một tham số, trong đó (phiên bản đơn giản) Tôi cửa hàng muốn trong một phiên, vì vậy khi tôi đến
http://www.example.com/home.php?sessid=db_session_id
Các kịch bản trông giống như:
session_start();
$sessid = @$_GET['sessid'];
if ($sessid) {
$_SESSION['sessid'] = $sessid;
}
var_dump($_SESSION);
và kết quả đầu ra:
array(1) { [0]=> string(13) "db_session_id" }
thì tốt, nhưng khi tôi đi đến link (không có t tham số sessid) mảng $_SESSION
trống. Tôi đã cố gắng để nhận xét dòng $_SESSION['sessid'] = $sessid;
trước khi truy cập trang mà không có thông số, nhưng nó vẫn không hoạt động.
Tôi đã kiểm tra đầu ra session_id()
và id phiên vẫn giữ nguyên.
thiết lập phiên từ phpinfo()
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 On On
session.bug_compat_warn On On
session.cache_expire 180 180
session.cache_limiter nocache nocache
session.cookie_domain no value no value
session.cookie_httponly Off Off
session.cookie_lifetime 0 0
session.cookie_path//
session.cookie_secure Off Off
session.entropy_file no value no value
session.entropy_length 0 0
session.gc_divisor 1000 1000
session.gc_maxlifetime 1440 1440
session.gc_probability 1 1
session.hash_bits_per_character 5 5
session.hash_function 0 0
session.name PHPSESSID PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path c:/wamp/tmp c:/wamp/tmp
session.serialize_handler php php
session.use_cookies On On
session.use_only_cookies On On
session.use_trans_sid 0 0
EDIT:
Các phiên được xóa bởi một iframe. Tôi không biết tại sao, nhưng khi nhận xét, các phiên hoạt động tốt. Thing là, iframe phải ở lại ở đó (tất nhiên là xấu, nhưng tôi không thể làm gì về nó). Bạn có biết cách giải quyết các phiên làm việc với iframe không?
Bộ 'COOKIE' có được đặt trong trình duyệt không? –
nếu bạn có nghĩa là biến '$ _COOKIE', thì có, nó được đặt là – Elwhis
Chờ, tôi là người duy nhất ở đây nhận thấy rằng tập lệnh này hoàn toàn sai cho mục đích tác giả và nó hoạt động như nó thực sự phải không? Nếu bạn không đặt $ _GET ['sessid'] thì không phải $ sessid được đặt và câu lệnh if không chạy. – Shoe