2012-11-22 47 views
6

Tôi đang sử dụng mã php và cố gắng thiết lập cookie như hình dưới đây:Làm thế nào để thiết lập cookie

setcookie("_GuestID",$userID,time() + (20 * 365 * 24 * 60 * 60)); 

tôi thấy rằng cookie là hết hạn ngay sau khi đóng trình duyệt. Tôi muốn làm cho nó dai dẳng trong thời gian dài. Tôi có thể làm được. Vui lòng đưa ra đề xuất của bạn.

Cảm ơn

+0

Bạn đã kiểm tra, từ trình duyệt của mình, liệu cookie có thực sự được đặt không? Ngày hết hạn là gì? – Andrew

+0

bạn đặt thời gian hết hạn cho một số điểm trong tương lai. không có những thứ như cookie "vĩnh viễn". chỉ "các cookie sẽ không hết hạn trong một thời gian dài". –

+0

Cookie có giá trị miễn là bạn muốn (có tối đa - google), hoặc _cho khách hàng xóa chúng_. Khách hàng thậm chí có thể từ chối tất cả cùng nhau. Phiên có thể đáng xem (mặc dù họ cũng sử dụng cookie) –

Trả lời

5

Như đã được ghi nhận, kiểm tra xem các tập tin cookie được thực sự được thiết lập trong trình duyệt của bạn (cú pháp của bạn xuất hiện đúng).

Cookie sẽ chỉ tồn tại miễn là bạn đã đặt chúng. Tôi đã luôn luôn sử dụng một năm như một khoảng thời gian vòng trừ khi có những yêu cầu hết hạn cụ thể (thường là ngắn hơn nhiều).

Sử dụng chức năng strtotime để làm cho họ dễ dàng hơn để đọc:

setcookie("cookieName1", $value1, strtotime('+1 year')); 
setcookie("cookieName2", $value2, strtotime('+30 days')); 

Có rất nhiều ví dụ về cách sử dụng chúng trên setcookie manual page mà đáng để dành thời gian để đọc.

2

Không có cách nào đặc biệt để đặt cookie liên tục. Giống như cách bạn đặt cookie bình thường. Cookie có ngày hết hạn được gọi là liên tục.

Các vấn đề liên quan