Danh mục

CakePHP Framework: Kiểm tra tính hợp lệ của dữ liệu (data validation)

Số trang: 26      Loại file: pdf      Dung lượng: 281.70 KB      Lượt xem: 14      Lượt tải: 0    
Hoai.2512

Hỗ trợ phí lưu trữ khi tải xuống: 20,000 VND Tải xuống file đầy đủ (26 trang) 0
Xem trước 3 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

CakePHP Framework: Kiểm tra tính hợp lệ của dữ liệu (data validation).Data Validation là một trong những thành phần không thể thiếu trong hầu hết các ứng dụng web. Nó giúp cho các dữ liệu được đảm bảo được kiểm tra chặt chẽ trước khi chèn vào CSDL. Cũng như CodeIgniter, Zend ,CakePHP cũng có chức năng Data Validation .Bài viết sẽ hướng dẫn cho người dùng cách sử dụng tập luật và ứng dụng chúng trong các trường hợp cụ thể khác nhau với các hàm hổ trợ sẵn của CakePHP....
Nội dung trích xuất từ tài liệu:
CakePHP Framework: Kiểm tra tính hợp lệ của dữ liệu (data validation)CakePHP Framework: Kiểm tra tính hợp lệ của dữ liệu (data validation)Data Validation là một trong những thành phần không thể thiếu trong hầu hếtcác ứng dụng web. Nó giúp cho các dữ liệu được đảm bảo được kiểm tra chặtchẽ trước khi chèn vào CSDL. Cũng như CodeIgniter, Zend ,CakePHP cũngcó chức năng Data Validation .Bài viết sẽ hướng dẫn cho người dùng cách sửdụng tập luật và ứng dụng chúng trong các trường hợp cụ thể khác nhau vớicác hàm hổ trợ sẵn của CakePHP.A- Cách làm việc của Datavalidation :Để sử dụng Datavalidation thì trong ứng dụng của chúng ta cần có hai thànhphần chính :+ Thành phần form helper : sử dụng cho việc tạo form1 + Thành phần namespace validate : sử dụng các tập luật để validation dữ liệu1 B.Cài đặt Cakephp và viết ứng dụng datavalidation :Việc thực hiện cài đặt CakePHP là không khó. Nếu bạn vẫn chưa biết làm thìcó thể (Xem lại bài CakePHP Framework cho người mới bắt đầu).Các thý mục cần chuẩn bị :- app/controllers/valids_controller.php- app/model/valid.php- app/views/valids/Chuẩn bị cho Controller Valids : (app/controllers/valids_controller.php)1 3 var $name = Valids;4 var $helpers = array (Html,Form); var $components = array(Session); // Use Flash messenger of Session5 component6 ?>Chuẩn bị cho Controller Valids : (app/models/valid.php)1 Trong ví dụ này các ứng dụng không chèn dữ liệu vào database mà chỉ thôngbáo có hợp lệ hay không và báo lỗi týõng ứng .Nên trong Model tôi dùng namespace là var $useTable = false; để ám chỉ làkhông sử dụng bảng CSDLC. Sử dụng 1 tập luật cho 1 field- Yêu cầu tạo 1 form nhập liệu với 2 field với các tập luật được mô tả :- title : không được phép rỗng- info : không được phép rỗngTrong Controller Valid ta thêm hàm demo01 :01 10 $this->Session->setFlash(Data is avaliable !);11 }else{12 $this->Session->setFlash(Data is not avaliable !);13 }14 }15 ?>Chức năng validation sẽ được kích hoạt khi ta dùng hàm $this->Valid->set($this->data);Sau đó Model Valid gọi hàm valid_01() để sử dụng tập luật cho các fieldtương ứng (title,info)Trong thư mục app/views/valids/ tạo file demo01.ctp :1 Add Post2 6 echo $this->Form->end(Register);7 ?>+ Để validate dữ liệu ta dùng namespace validate ($this->validate) để gán tậpluật cho các field+ Với rule là từ khóa để chỉ đó là tập luật và notEmpty là từ khóa để nói làkhông được rỗng+ Trong 1 số tài liệu ngýời ta có thể dùng từ khóa VALID_NOT_EMPTY ðểthay cho từ khóa notEmpty+ Message là từ khóa để chỉ thông báo lỗi $this->validates($this->validate) //hàm kiểm tra các tập luậtCác từ được coi từ khóa thì phải viết đúng tên và giữ nguyên nội dung của từ.Chạy thử ứng dụng đầu tiên : http://localhost/cakephp/valids/demo01Một số tập luật thông dụng :§ rule => alphaNumeric : chỉ có số hoặc chữ§ rule => array(between, 5, 15) : giá trị nằm trong khoản từ 5-15§ rule => array(comparison, >=, 18) : giá trị phải lớn hõn 18§ rule => array(email, true) : định dạng email§ rule => array(extension, array(gif, jpeg, png, jpg)) : dành cho uploadfile , kiểm tra extension§ rule => array(minLength, 8) : độ dài nhỏ nhất là 8§ rule => array(maxLength, 8) : độ dài tối đa là 8§ rule => numeric : dữ liệu nhập là số§ rule => notEmpty : dữ liệu không được bỏ trống§ rule => url : định dạng địa chỉ urlD. Sử dụng nhiều tập luật cho 1 fieldYêu cầu tạo 1 form nhập liệu với 3 field với các tập luật được mô tả :- Username : không được phép rỗng, tối đa là 10 kí tự, ít nhất là 4 kí tự- Email : không được phép rỗng, định dạng là email- website: không được phép rỗng, định dạng là địa chỉ urlTrong Controller Valid ta thêm hàm demo02 :01 03 var $name = Valids;04 var $helpers = array (Html,Form); var $components = array(Session); // Use Flash messenger of Session05 component06 // ---- Valid multi rules07 function demo02(){08 $this->Valid->set($this->data);09 if($this->Valid->valid_02()==TRUE){10 $this->Session->setFlash(Data is avaliable !);11 }else{12 $this->Session->setFlash(Data is not avaliable !);13 }14 }15 ?>Trong thý mục app/views/valids/ tạo file demo02.ctp :1 Add Post2 3 echo $this->Form->create(Valid, array(action => demo02));4 echo $this->Form->input(username);5 echo $this->Form->input(email);6 echo $this->Form->input(website);7 echo $this->Form->end(Register);8 ?>Trong model Valid thêm hàm valid_02() :01 11 message => Username can not empty,12 ),13 rule2 => array(14 rule => array(minLength, 4),15 message => Usernames must be at least ...

Tài liệu được xem nhiều: