Session là khái niệm quan trọng trong lập trình PHP thuần. Nó được sử dụng
để quản lý phiên làm việc của người sử dụng như quản lý cơ chế chứng thực
người dùng (đăng nhập), quản lý việc lưu nhớ thông tin,.Và dĩ nhiên
CakePHP Framework cũng cung câp cho chúng ta thư viện để xử lý
session.
Trong bài viết này , tôi sẽ hướng dẫn các bạn cách sử dụng Session trong
CakePHP kèm theo những ví dụ về cách sử dụng trong mỗi trường hợp
7 trang |
Chia sẻ: luyenbuizn | Lượt xem: 1198 | Lượt tải: 0
Nội dung tài liệu CakePHP Framework: Tìm hiểu cách sử dụng session, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
CakePHP Framework: Tìm hiểu cách sử dụng session
Session là khái niệm quan trọng trong lập trình PHP thuần. Nó được sử dụng
để quản lý phiên làm việc của người sử dụng như quản lý cơ chế chứng thực
người dùng (đăng nhập), quản lý việc lưu nhớ thông tin,...Và dĩ nhiên
CakePHP Framework cũng cung câp cho chúng ta thư viện để xử lý
session.
Trong bài viết này , tôi sẽ hướng dẫn các bạn cách sử dụng Session trong
CakePHP kèm theo những ví dụ về cách sử dụng trong mỗi trường hợp
Trong CakePHP Framework muốn lập trình ứng dụng thì ta cũng cần có
những thành phần quan trọng như : Helper và Component thông qua hai
biến $helpers và $component
Nếu bạn chưa biết về cách viết helper và component trong cakePHP, vui lòng
xem lại 2 bài viết: Cách viết helper trong CakePHP Framework và cách
viết component trong cakePHP Framework.
Ví dụ khai báo :
1 var $helpers = array('Html', 'Form','Javascript','Ajax','Common');
2 var $components = array('Acl',’Mail’);
Có những thành phần chỉ được khai báo trong $helpers như : Html,Form… ,
$component như : Acl,Mail.. . Tuy nhiên Session lại là trường hợp ngoại lệ ,
nó có thể khai báo trong cả hai thành phần $helpers và $components.
1 var $helpers = array('Html', 'Form','Javascript','Ajax','Common',’Session’);
2 var $components = array('Acl',’Mail’,’Session’);
Cú pháp sử dụng :
Cho dù Session được khai báo ở $helpers hay $component đi chăng nữa thì
nó cũng có các hàm chính như sau :
a) write($name,$value)
- Lưu session có giá trị $value vào tên $name
- $name có thể sử dụng dấu chấm (.) để tạo thành mảng session
Ví dụ :
1 //Lưu theo cú pháp thông thường
2 $this->Session->write('Username','administrator');
3
4 //Lưu dạng mảng
5 $this->Session->write('Person.name', 'admin');
6 $this->Session->write('Person.email', 'admin@yahoo.com');
b) read($name)
- Lấy giá trị của session thông qua tên
Ví dụ :
01 echo $this->Session->read('Username');
02 //kết quả
03 admin
04 pr($this->Session->read('Person'));
05 //kết quả
06 Array
07 (
08 [name] => admin
09 [email] => admin@yahoo.com
10 )
c) check($name)
- Kiểm tra xem có tồn tại session có tên là $name hay không
Ví dụ: không tồn tại Session Username
1 $this->Session->check('Username');
2 //Kết quả
3 false
d) delete($key)
- Xóa Session thông qua tên
1 //Xóa Session Username
2 $this->Session->delete('Username');
3 //Chỉ xóa Session email của Person
4 $this->Session->delete('Person.email');
5 //Xóa toàn bộ Session Person
6 $this->Session->delete('Person');
e) destroy()
- Xóa toàn bộ Cookie và Session
1 $this->Session->destroy()
f) error()
- Xác định lỗi cuối cùng lên quan tới session
g) setFlash($message, $element = 'default', $params = array(), $key =
'flash')
- Thường sử trong Controllers
+ $message : nội dung hiển thị
+ $element : load file chứa nội dung bao quanh $message .Nội dung được lưu
dạng file *.ctp trong thư mục app/view/elements/
+ $param : dùng dể thay đổi các thuộc tính như : class, id, style ..
+ $key : mặc định là "flash"
Ví dụ :
Tôi có file sms.ctp (app/views/elements/sms.ctp)
1
<?php echo $message
;?>
Thực hiện lệnh :
1
$this->Session->setFlash('I miss you all the time', 'sms', array('class' =>
'message_02'))
Thì nội dung file sms.ctp sẽ được load và hiển thị là :
1 I miss you all the time
Các file đính kèm theo tài liệu này:
- cakephp_framewor8_5803.pdf