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. Đây là công cụ để tạo chức năng ghi nhớ mật khẩu hoặc lưu trữ các mã theo dõi của hệ thống website với người dùng.
Cookie là gì?
- 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.
Thiết lập Cookie
Sử dụng hàm setcookie() để thiết lập cookie
setcookie($name, $value, $expire, $path, $domain)
Input
$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 sống 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 cookie ghi nhớ thông tin đăng nhập
Sau khi người dùng chọn vào chức năng ghi nhớ đăng nhập chúng ta lưu username
, và password
lên trình duyệt để đánh dấu user đã đăng nhập với thời gian sống của nó là 86400 giây <=> 24 giờ.
<?php
if (!empty($_POST["remember_me"])) {
setcookie("username", $_POST["username"], time() + 86400);
setcookie("password", $_POST["password"], time() + 86400);
echo "Đã ghi nhớ đăng nhập thành công";
} else {
echo "Không ghi nhớ đăng nhập";
}
?>
Lấy giá trị của Cookie
Sau khi thiết lập cookie được lưu vào biến hệ thống $_COOKIE
, nó chính là dữ liệu kiểu mảng nên việc truy suất lấy giá trị như thao tác với mảng thông thường.
Đoạn code bên dưới giúp chúng ta lấy giá trị của biến username
trong $_COOKIE
.
<?php
$username = $_COOKIE['username '];
echo $username ;
?>
Hủy một biến trong Cookie
Để hủy một biến trong Cookie chúng ta chỉ cần thiết lập thời gian sống của nó trở về số âm. Sau khi hủy thì dữ liệu biến đó sẽ bị loại khỏi trên cookie trình duyệt của người dùng.
Đoạn code bên dưới giúp chúng ta hủy biến is_login
trong Cookie. Bạn để ý time cần thiết lập số âm time() - 3600
.
<?php
setcookie ("username",$_POST["username"],time() - 3600);
setcookie ("password",$_POST["password"],time() - 3600);
?>
Chú ý: Phần hủy Cookie thường được dùng trong trang đăng xuất (logout) người dùng trên hệ thống.
Tổng kết:
Cookie là một phần rất quan trọng, dữ liệu cúa nó được lưu cá nhân hóa trên từng trình duyệt của người dùng. Ngay bây giờ bạn nên ghi chép và thực hành lại để nắm chắc bài học.
*** Nếu bạn đang có ý định học Php Mysql để chuẩn bị cho việc làm, nhưng cảm thấy bối rối và không biết bắt đầu từ đâu hoặc làm thế nào để đáp ứng nhu cầu tuyển dụng và kiếm được thu nhập, thì hãy khám phá chương trình học “PHP Master” và “Laravel Pro” tại https://unitop.vn.
Chúc bạn thành công!