Hướng dẫn dùng cookie file trong PHP

Cookie cung cấp cho ứng dụng web một phương thức lưu trữ thông tin trên trình duyệt của người dùng và truy xuất khi người dùng gửi yêu cầu xem trang.

  • Cookie được lưu trữ theo cặp thông tin key/value
  • Cookie được lưu ở trình duyệt người dùng và có thể truy xuất từ server khi người dùng truy cập trang
  • Thời gian sống của server được quy định tối đa ba năm
  • Cookie có tầm ảnh hưởng đến các vùng trên sever cho chúng ta quy định

Sử dụng hàm setcookie() để thiết lập cookie

setcookie($name, $value, $expire, $path, $domain)

Trong đó:

  • $name: Tên cookie
  • $value: Giá trị cookie (mặc định chuổi rỗng)
  • $expire: Thời gian sống cookie, nếu được thiết lập 0 thì sau khi tắt trình duyệt cookie tự mất. Thời gian sosongs tối đa 3 năm
  • $path: Đường dẫn trên server mà cookie có hiệu lực. Nếu được thiết lập là / thì cookie có hiệu lực với tất cả các file trên server.
  • $domain: Tên miền cookie có hiệu lực

Ví dụ: Thiết lập trạng thái lưu login

Ngắn gọn hơn

  • Biến toàn cục $_COOKIE là nơi lưu thông tin của COOKIE
  • Dựa theo tên của cookie để truy xuất và lấy giá trị
  • Để xóa cookie ta cập nhật thời gian sống bằng một thời gian trong quá khứ
  • Khi Cookie được xóa thông tin của cookie được loại bỏ ra khỏi trình duyệt và biến hệ thống $_COOKIE

GHI NHỚ

  • Cookie lưu thông tin lên trình duyệt người dùng và có thể lấy giá trị ở server
  • Cookie có thời gian sống nhất định
  • Sử dụng $_COOKIE để truy xuất cập nhật giá trị cookie
  • Để xóa cookie chúng ta thiết lập thời gian sống về khoảng thời gian trong quá khứ

BÀI TẬP

Xây dựng chức năng ghi nhớ mật khẩu trong ứng dụng đăng nhập (remember_me)

Url Link

http://hocweb123.com/huong-dan-lam-viec-voi-cookie-trong-php.html



Nội dung chính

  • Cookie là gì?
  • Tạo cookie trong PHP
  • Tạo và đọc cookie trong PHP
  • Sửa đổi giá trị cookie trong PHP
  • Xóa cookie trong PHP
  • Kiểm tra xem Cookies có được bật hay không

Cookie thường được sử dụng để xác định người dùng. Cookie là một tệp nhỏ mà máy chủ nhúng trên máy tính của người dùng. Mỗi lần cùng một máy tính yêu cầu một trang với một trình duyệt, nó cũng sẽ gửi cookie tới server. Bạn có thể tạo và truy xuất các giá trị cookie trong PHP.



Hàm setcookie() được sử dụng để tạo cookie:

Cú pháp:

setcookie(name, value, expire, path, domain, secure, httponly);

Chỉ có tham số name là bắt buộc. Tất cả các thông số khác là tùy chọn.


Ví dụ sau tạo cookie có tên "user" với giá trị "David Vinh". Cookie sẽ hết hạn sau 30 ngày (86400 * 30). "/" Có nghĩa là cookie có sẵn trong toàn bộ trang web (nếu không, hãy chọn thư mục bạn thích).

Sau đó, chúng ta đọc giá trị của cookie "user" (sử dụng biến toàn cầu $_COOKIE). Chúng ta cũng sử dụng hàm isset() để kiểm tra xem cookie đã được tạo chưa:

File: cookie-trong-php-1.php






";
     echo "Giá trị là: " . $_COOKIE[$cookie_name];
}
?>

Chú ý: Có thể bạn phải tại lại trang web này để tạo cookie và đọc cookie.

Kết quả:

Cookie 'user' đã được tạo!
Giá trị là: David Tèo
Chú ý: Có thể bạn phải tại lại trang web này để tạo cookie và đọc cookie.

Chú ý: Hàm setcookie() phải đặt TRƯỚC thẻ .

Xem kết quả ở tab mới.



Để sửa đổi một cookie, chỉ cần thiết lập (một lần nữa) cookie bằng cách sử dụng hàm setcookie():

File: cookie-trong-php-2.php






";
     echo "Giá trị là: " . $_COOKIE[$cookie_name];
}
?>



Kết quả:

Cookie 'user' đã được tạo!
Giá trị là: David Tèo

Xem kết quả ở tab mới.


Để xóa cookie, hãy sử dụng hàm setcookie() với ngày hết hạn trong quá khứ:

File: cookie-trong-php-3.php








Kết quả:

Xem kết quả ở tab mới.


Kiểm tra xem Cookies có được bật hay không

Ví dụ sau kiểm tra xem cookie có được bật hay không. Trước tiên, hãy thử tạo một cookie bằng hàm setcookie() trong PHP, sau đó đếm số phần tử của mảng mảng $_COOKIE:

File: cookie-trong-php-4.php




 0) {
    echo "Cookies đang được bật.";
} else {
    echo "Cookies đang bị tắt.";
}
?>



Kết quả:

Xem kết quả ở tab mới.