Cookies và Session là hai khái niệm quan trọng trong PHP mà bạn cần nắm vững. Chúng được dùng để lưu trữ dự liệu tạm thời trên hệ thống để sử dụng trong các hành động khác nhau. Ở bài hôm nay chúng ta sẽ tìm hiểu về khái niệm và cách sử dụng của Cookies và Session.

Cookie là gì?

Cookie là một tệp nhỏ được máy chủ nhúng vào client tức là máy tính của người dùng nhằm xác định và nhận diện người dùng. Mỗi khi bạn sử dụng máy tính, trình duyệt sẽ gửi cookie từ máy của bạn lên server. Khi  đóng trình duyệt, cookie vẫn tồn tại tùy thuộc vào thời gian hết hạn của cookie khi được khởi tạo.

Khởi tạo cookie trong PHP

cú pháp

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

 

  • $name tên của cookie các bạn muốn tạo.
  • $value giá trị của cookie đó.
  • $expire  thời gian sống của cookie.
  • $path đường dẫn lưu trữ cookie.
  • $domain là tên của domain.

Tham số name là tham số bắt buộc. Các tham số còn lại là tùy chọn.

Ví dụ

setcookie('web_name', 'codecamp.vn', time() + (86400 * 30), "/"); // 86400 = 1 day

 

Mình khởi tạo cookie  tên web_name có giá trị là codecamp.vn. Thời gian sống là 30 ngày.

"/"  có nghĩa là cookie sẽ có hiệu lực trên toàn domain. Nếu không hãy chọn đường dẫn mà bạn muốn cookie có hiệu lực.

Lấy giá trị cookie

Để lấy giá trị của cookie bạn sử dụng biến $_COOKIE

$_COOKIE[$name];

 

Xóa cookie

Khi xóa cookie, bạn chỉ cần set thời gian hết hạn của nó nhỏ hơn thời gian hiện tại.

setcookie("web_name", "", time() - 3600);

 

Session là gì?

Khi bạn mở trình duyệt, thực hiện các thao tác trên trình duyệt và cuối cùng là đóng trình duyệt. Quá trình này được gọi là một phiên làm việc. Máy tính hiểu được quá trình này và nhận biết được bạn là ai và khi nào bạn kết thúc phiên. Tuy nhiên server thì không phải vậy, nó không nhân biết được bạn là ai, các thao tác của bạn có cùng một phiên làm việc hay không. Vì vậy session được tạo ra để lưu trữ thông tin người dùng trên nhiều trang của một domain. Các session này kết thúc thì người dùng đóng trình duyệt. 

Khởi tạo session

Trước khi khởi tạo một session các bạn cần có hàm session_start().

Khởi tạo các biến session bằng biến toàn cục mà PHP có sẵn là $_SESSION 

Ví dụ


// Start the session
session_start();
$_SESSION['sinhvien'] = "tuy";
?>

 

Lấy giá trị của session

Để lấy giá trị của session cũng tương tự như cookie chúng ta có hàm $_SESSION

ví dụ

echo $_SESSION['sinhvien'];

 

Xóa một session

Để xóa một session chúng ta dùng hàm session_unset() hoặc session_destroy().

Kết bài

Qua bài này mình đã giới thiệu với các bạn về cookie và session. Mọi thắc mắc và góp ý vui lòng để lại comment cho mình nhé :))