Hướng dẫn học : Cách sử dụng Session trong CakePHP

Hướng dẫn học : Cách sử dụng Session trong CakePHP

Ắc hẳn khái niệm session khá quen thuộc đối với chúng ta .Trong bài viết này , tôi sẽ hướng dẫn các bạn cách sử dụng Sesion trong CakePHP kèm theo những ví dụ về cách sử dụng trong mỗi trường hợp

Hướng dẫn học :  Cách sử dụng Session trong CakePHP

1.Giới thiệu :

Trong CakePHP 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

Xem các viết các thành phần cho CakePHP tại đây

Ví dụ khai báo :

var  $helpers = array('Html', 'Form','Javascript','Ajax','Common');
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.

var  $helpers = array('Html', 'Form','Javascript','Ajax','Common',’Session’);
var  $components = array('Acl',’Mail’,’Session’); 

2.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ụ :

//Lưu theo cú pháp thông thường
 $this->Session->write('Username','administrator');
 
//Lưu dạng mảng
$this->Session->write('Person.name', 'admin');
$this->Session->write('Person.email', '[email protected]'); 

b) read($name)
- Lấy giá trị của session thông qua tên
Ví dụ :

echo $this->Session->read('Username');
//kết quả
admin

pr($this->Session->read('Person'));
//kết quả
Array
(
    [name] => admin
    [email] => [email protected]
) 

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

$this->Session->check('Username');
//Kết quả
false 

d) delete($key)
- Xóa Session thông qua tên

//Xóa Session Username
$this->Session->delete('Username');
//Chỉ xóa Session email của Person
$this->Session->delete('Person.email');
//Xóa toàn bộ Session Person
$this->Session->delete('Person'); 

e) destroy()
- Xóa toàn bộ Cookie và Session

$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)

<div id="flashMessage" class="message_01"><?php echo $message ;?></div>

Thực hiện lệnh :

$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à :

<div id="flashMessage" class="message_02">I miss you all the time</div> 
Tags: 
Bạn thấy bài viết này như thế nào?: 
Average: 10 (1 vote)
Ảnh của Khanh Hoang

Khanh Hoang - Kenn

Kenn is a user experience designer and front end developer who enjoys creating beautiful and usable web and mobile experiences.

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Hướng dẫn flag , unflag trong Drupal 7

Hướng dẫn flag , unflag trong Drupal 7

Drupal's Flag module comes in handy in various situations. It does however have one major drawback for some use cases - there is no way to clear all flags of a certain content item.

Hướng dẫn mua iPad 2

Hướng dẫn mua iPad 2

Những lựa chọn thường gặp dưới đây sẽ khiến người dùng bối rối ít nhiều khi chọn mua máy tính bảng iPad 2.

MacBook Air được dùng để thái rau, cắt táo

MacBook Air được dùng để thái rau, cắt táo

Anh chàng Sakaiehita người Nhật đã dùng laptop siêu mỏng của Apple để thái bắp cải, cắt nấm, làm tôm... nhưng không thành công khi thái thịt.

Công ty diệt chuột T&C

 

Diet con trung