Hướng dẫn php session id cookie - cookie id phiên php
Cookie là mẩu tin nhỏ được lưu ở máy người dùng (cụ thể là tại Browser, trình duyệt), Cookie sử dụng với mục đích để theo dõi, lưu lại hoạt động truy cập. Ví dụ nhớ tên người dùng truy cập vào website có thể hoạt động qua các bước như sau: Show
Nên nhớ Cookie được lưu lại ở Browser, sau đó mỗi lần gửi yêu cầu đến Server nó sẽ tự động gửi thông tin này đến Server Thiết lập, lưu CookieTừ PHP có thể thiết lập Cookie bằng hàm setcookie($name, $value, $expire = 0, $path="", $domain = "", $security = false, $httponly = false);
Ví dụ: php -S 0.0.0.0:8080 setcookie.php3 Đoạn mã trên thiết lập lưu Cookie với tên php -S 0.0.0.0:8080 setcookie.php5, hết hạn sau 10 phút (tức 600 giây) Bạn có thể chạy lệnh php -S 0.0.0.0:8080 setcookie.php Sau đó truy cập địa chỉ php -S 0.0.0.0:8080 setcookie.php6 để kiểm tra, ví dụ dùng Chrome Khi truy cập, phần header trả về có thông tin về thiết lập Cookie, ngược lại nếu đã có Cookie khi trình duyệt gửi yêu cầu - nó thiết lập giá trị cookie vào phần header của request Hoặc dùng lệnh curl để xem header trả về: Truy cập - đọc - CookieBạn dùng biến 0 là một mảng để truy cập thông tin cookie do trình duyệt gửi lên. Giống nhưphp -S 0.0.0.0:8080 setcookie.php8 bạn nên dùng php -S 0.0.0.0:8080 setcookie.php9 để kiểm tra sự tồn tại của COOKIE. 0 Xóa CookieĐể yêu cầu trình duyệt xóa cookie bạn sử dụng chính hàm setcookie với thủ thuật đặt thời gian đã hết hạn. Ví dụ: setcookie( "name", "", time()- 60, "/","", 0); Khái niệm về SessionĐể trao đổi dữ liệu từ trang này qua trang khác (giữa 2 request) thì làm như thế nào? Ví dụ nếu người dùng đã đăng nhập, thì thông tin đăng nhập được lưu lại và chuyển cho các trang khác nhau trong phiên làm việc để tránh mỗi lần gửi request lại phải đăng nhập, hay người dùng chọn đựa mặt hàng vào giỏ hàng thì phải nhớ để chuyển đến trang thanh toán ... PHP có cơ chế để làm việc này đó chính là 1Session là thông tin về phiên làm việc cho từng khách truy cập, trong PHP nó tạo một file trong thư mục tạm (thư mục này cài đặt ở 2) để lưu thông tin này, thông tin này được dùng chung cho tất cả các trang mà khách truy cập. Mỗi khách truy cập, dựa vào thông tin trình duyệt gửi lên nó tạo (hoặc phục hồi) một Session riêng cho khách đó. là thông tin về phiên làm việc cho từng khách truy cập, trong PHP nó tạo một file trong thư mục tạm (thư mục này cài đặt ở 2) để lưu thông tin này, thông tin này được dùng chung cho tất cả các trang mà khách truy cập. Mỗi khách truy cập, dựa vào thông tin trình duyệt gửi lên nó tạo (hoặc phục hồi) một Session riêng cho khách đó.Sự làm việc của Session có thể vắn tắt như sau:
Như vậy 1 là cơ chế lưu trữ và phục hồi thông tin cho phiên làm việc (truy cập) của khách, nhằm trao đổi thông tin khi duyệt từ page này sang page khác. Để Session hoạt động thì còn liên quan tới hỗ trợ 4 từ trình duyệt. Ví dụ trong Chrome bạn block Cookie từ facebook, thì bạn không thể đăng nhập được facebook.Chạy Session - Lưu trữ và lấy thông tinSession trong PHP bắt đầu hoạt động sau khi bạn gọi hàm 5, hàm này sẽ phục hồi dữ liệu SESSION nếu đã có, nếu chưa nó sẽ tạo ra SESSION mới cho bạn. Để sử dụng khuyên nên gọi hàm này ngay khi bắt đầu của Page. Một cách khác mà không cần quan tâm đến gọi 5 đó là thiết lập cho PHP tự động chạy hàm này bàng cách 7 trong 8Khi mà hệ thống session trong PHP được chạy, mặc định nó sẽ gửi về trình duyệt một Cookie với tiền tố 9, tất nhiên có thể thay đổi tiền tố này trong php.iniVí dụ trang chạy thử Session setcookie( "name", "", time()- 60, "/","", 0);0
Từ nắm vững Cookie và Session là cơ sở để xây dựng lên các hệ thống như cho phép user đăng nhập vào website, xây dựng ứng dụng giỏ hàng đặt hàng ... Source code: session_cookie (Git), hoặc tải rphp-sessioncookie |