SlideShare a Scribd company logo
1 of 35
E-Learning Lab 
Thí sinh dự thi 
“Dạy Online – Share khoảnh khắc” 
Link: 
http://home.e-learninglab.co/su-kien/
TÌM HIỂU FRAMEWORK 
CAKEPHP
NỘI DUNG TRÌNH BÀY 
1 GIỚI THIỆU CAKEPHP 
2 MÔ HÌNH MVC TRONG CAKEPHP FRAMEWORK 
1
1. GIỚI THIỆU CAKEPHP 
CakePHP là một Framework phát triển ứng dụng 
web mã nguồn mở. Mục tiêu chính là cho phép 
bạn làm việc một cách nhanh chóng và có cấu 
trúc mà không làm mất tính linh hoạt. 
CakePHP được cấp phép theo giấy phép MIT. Có 
nghĩa là bạn được tự do sửa đổi, phân phối và 
phát hành lại mã nguồn với điều kiện là bản 
quyền còn nguyên vẹn. Bạn cũng được miễn phí 
để kết hợp CakePHP vào bất kỳ ứng dụng 
thương mại hoặc ứng dụng mã nguồn đóng. 
2
1. GIỚI THIỆU CAKEPHP 
3 
 Đặc điểm nổi bật: 
- Mã nguồn mở, miễn phí 
- Xây dựng theo mô hình MVC 
- Xây dựng nhiều thư viện hỗ trợ cho View 
như: Ajax, HTML Form, Javascrip…. 
- Xây dựng nhiều thư viện hỗ trợ cho Controller: 
Email, Session, Cookies… 
- Kiểm tra rang buộc dữ liệu.
1.GIỚI THIỆU CAKEPHP 
THỨ HẠNG CỦA CAKEPHP 
Số Thứ Tự Hot PHP Framework Ranking PHP Framework 
1 Yii Yii 
2 CodeIgniter PHPOpenbiz 
3 CakePHP CodeIgniter 
4 Zend CakePHP 
5 Symfony Symfony 
6 PHPDevShell PHPDevShell 
7 Prado Prado 
8 Akelos Akelos 
9 ZooP Zend 
10 QPHP eZ Components 
4
1.GIỚI THIỆU CAKEPHP 
Một số website ứng dụng framework CakePHP 
Website Teamspeak.net 
5
1.GIỚI THIỆU CAKEPHP 
Một số website ứng dụng framework CakePHP 
Website followmy.tv 
6
2. MVC TRONG CAKEPHP 
(1): Yêu cầu của người dung được gửi 
đến Controller 
(2): Controller sẽ xử lý yêu cầu(thêm, 
cập nhật….) và gọi tới Model để truy 
cập dữ liệu. 
(3): Model sẽ thực hiện yêu cầu của 
Controller bằng cách lấy cập nhật hoặc 
lưu trữ dữ liệu và trả lời cho Controller. 
(4): Sau đó Controller sẽ trả dữ liệu 
đầu ra đến View. 
(5): View sẽ thể hiện kết quả của yêu 
cầu người dùng ra với một định dạng 
xác định. 
7 
 Sơ đồ hoạt động của mô hình MVC
2. MVC TRONG CAKEPHP 
8 
2.1 View 
View là những dữ liệu đầu ra hay gọi là dữ liệu trả về cho 
người dùng khi một yêu cầu được thực thi. Nó cơ bản 
chứa những đoạn mã HTML nhúng với các đoạn mã PHP. 
View được xem giống như tầng đại diện cho bộ mặt của 
ứng dụng. Không thể gọi View một cách trực tiếp mà phải 
thông qua Controller. 
Một số thư viện hỗ trợ cho view như: FormHelper, 
HTMLHelper…
2. MVC TRONG CAKEPHP 
9 
2.1.1 FormHelper 
- Tạo Form: 
<?php echo $this->Form->create('Nhacungcap', 
array(‘inputDefaults’ => array(‘div’ =>false))); ?> 
Trong đó: 
• inputDefaults: thiết lập giá trị mặc định cho các input 
của Form như bỏ đi lable hay div trong Form. 
• type: phương thức của Form, có thể là get, post, 
file(dùng trong file Upload).... Mặc định của type là 
post. 
• action: sử dụng để xử lý dữ liệu, action trong Cakephp 
được viết thành function nằm trong Controller. 
- Kết thúc Form: <?php echo $this->Form->end();?>
2. MVC TRONG CAKEPHP 
2.1.1 FormHelper 
- Ngoài ra còn sử dụng một số input phổ biến: 
10 
• textbox: 
Cách 1: <?php echo $this->Form->textbox(‘vidu’); ?> 
Cách 2: <?php echo $this->Form->input(‘vidu’, array(‘type’ 
=> ‘text’, ‘name’ => ‘vidu’));?> 
• textarea: 
Cách 1: <?php echo $this->Form->textarea(‘textarea’)?> 
Cách 2: <?php echo $this->Form->input(‘textarea’, 
array(‘type’ => ‘textarea’, ‘name’ => ‘textarea’)); ?> 
• password: 
Cách 1: <?php echo $this->Form->password(); ?> 
Cách 2: <?php echo $this->Form->input(‘password’, 
array(‘type’ => ‘password’, ‘name’ => ‘password’));?>
2. MVC TRONG CAKEPHP 
11 
2.1.2 HTMLHelper 
Vai trò của HtmlHelper trong CakePHP là thực hiện những 
tùy chọn liên quan đến HTML nhanh hơn, dễ dàng hơn và 
dễ thay đổi. 
Sau đây là một số phương thức của HtmlHelper và cách sử 
dụng: 
• HtmlHelper::charset() 
• HtmlHelper::css() 
• HtmlHelper::docType() 
• HtmlHelper::image() 
• HtmlHelper::link () 
• HtmlHelper::script()
2. MVC TRONG CAKEPHP 
12 
2.1.2.1 HtmlHelper::charset($charset==null) 
 Sử dụng để tạo thẻ meta, mặc định là UTF-8. 
 Cú pháp: 
<?php echo $this->Html->charset(); ?> 
 Kết quả: 
<meta http-equiv="Content-Type" content="text/html; 
charset=utf-8" />
2. MVC TRONG CAKEPHP 
13 
2.1.2.2 HtmlHelper::css($path, array options=array()) 
 Trong đó: 
• $path: đường dẫn 
• $options(array): mảng các tùy chọn 
 Cú pháp: 
<?php echo $this->Html->css(array('reponsive', 'menu')); ?> 
<?php echo $this->Html->charset(); ?> 
 Kết quả: 
<link rel="stylesheet" type="text/css" href="/css/main.css" /> 
<link rel="stylesheet" type="text/css" href="/css/reponsive.css" /> 
<link rel="stylesheet" type="text/css" href="/css/menu.css" />
2. MVC TRONG CAKEPHP 
14 
2.1.2.3 HtmlHelper::doctype(string $type=‘xhtml-stric’) 
 $type: loại doctype được sử dụng 
 Các loại doctype: 
Loại Mô tả 
html4-strict HTML4 Strict 
html4-trans HTML4 Transitional 
html4-frame HTML4 Frameset 
html5 HTML5 
xhtml-strict XHTML1 Strict 
xhtml-trans XHTML1 
Transitional 
xhtml-frame XHTML1 Frameset 
xhtml11 XHTML1.1 
Ví dụ: 
<?php echo $this->Html-> 
docType(); ?> 
<?php echo $this->Html-> 
docType(‘html5’); ?> 
<?php echo $this->Html-> 
docType(‘html4-trans’); ?>
2. MVC TRONG CAKEPHP 
2.1.2.4 HtmlHelper::image(string $path, array options=array()) 
15 
 Tạo ra một thẻ định dạng hình ảnh. Trong đó: 
• $path: đường dẫn đến hình ảnh 
• $options(array): mảng các tùy chọn 
 Ví dụ: 
<?php echo $this->Html->image('cake_logo.png'); ?> 
 Kết quả: 
<img src="/img/cake_logo.png"/>
2. MVC TRONG CAKEPHP 
2.1.2.5 HtmlHelper::link($title, $url=null, array options=array(), 
$confirmMessage=false) 
16 
 Trong đó: 
• $path: Tên liên kết 
• $options(array): mảng các tùy chọn của HTML 
• $url: đường dẫn 
 Ví dụ: 
<?php echo $this->Html->link('Delete',array('controller' => 'recipes', 
'action' => 'delete', 6),array(),"Bạn chắc muốn xóa?"); ?> 
 Kết quả: 
<a href="/recipes/delete/6" onclick="return confirm('Bạn chắc muốn 
xóa?');">Delete</a>
2. MVC TRONG CAKEPHP 
2.1.2.6 HtmlHelper::script($url=null, array options=array()) 
17 
 Trong đó: 
• $url: đường dẫn đến một file javascript hay nhiều file 
javascript 
• Options: mảng các tùy chọn HTML 
 Ví dụ: 
<?php echo $this->Html->script(‘scripts’); ?> 
 Kết quả: 
<script type="text/javascript" href="/js/scripts.js"></script>
2. MVC TRONG CAKEPHP 
17 
2.1.3 SessionHelper 
 Khai báo Session: var $helper=array(‘Session’); 
Gọi sử dụng: $session -> method(); 
Các phương thức chính: 
• read($key): Đọc Session. Trả về một chuỗi hoặc một 
mảng tùy vào nội dung Session. 
• check($key): Kiểm tra sự tồn tại của Session. 
• error(): Xác định lỗi liên quan đến Session. 
• flash($key= ‘flash’, array $params=array()): Hiển 
thị thông báo.
2. MVC TRONG CAKEPHP 
18 
2.2 Model 
Model là những lớp được xây dựng nhằm trao đổi thông 
tin với cơ sở dữ liệu. Một lớp Model có thể thực hiện các 
tác vụ truy vấn thêm, xóa, cập nhật dữ liệu. 
Model nằm trong thư mục /app/Model chứa mã nguồn 
ứng dụng. Model chứa các file Model, Behavior, 
Datasource. 
Cách khai báo Model: 
class TenModel extends AppModel 
{ 
……………………. 
}
2. MVC TRONG CAKEPHP 
19 
2.2.1 Lấy dữ liệu 
 Dùng hàm find($type, $param) 
Cú pháp: <?php $this->Model->find($type, $params); ?> 
Trong đó: 
• $type: phương thức truy vấn dữ liệu. Có thể là 
‘all’, ‘first’, ‘list’, ‘count’, ‘neighbors’, ‘threaded’. Giá 
trị mặc định là ‘first’. 
• $param: mảng tập hợp các điều kiện lấy dữ liệu, 
gom cụm dữ liệu, sắp xếp hoặc thể hiện dữ liệu
2. MVC TRONG CAKEPHP 
20 
2.2.1 Lấy dữ liệu 
 Dùng hàm find($type, $param) 
 Một số tùy chọn $param: 
array( 
'conditions' => array('Model.field' => $thisValue), //mảng các điều 
kiện tìm kiếm 
'recursive' => 1,// la mot gia tri so nguyen, co the la -1, 0, 1 hoac 2 
'fields' => array('Model.field1', 'DISTINCT Model.field2'),//mang cac 
cot du lieu muon lay ra 
'order' => array('Model.created', 'Model.field3 DESC'), //menh de 
ORDER BY sap xep thu tu ket qua sau khi tim kiem la tang dan (ASC) 
hoac giam dan (DESC) 
group' => array('Model.field'), //menh de GROUP BY 
'limit' => n, //so nguyen 
'page' => n, //so nguyen 
'offset'=>n, //so nguyen 
'callbacks' => true //cac gia tri bao gom true, false, 'before', 'after‘ 
)
2. MVC TRONG CAKEPHP 
21 
2.2.1 Lấy dữ liệu 
 Dùng hàm find($type, $param) 
 find(‘all’): trả về tất cả kết quả tìm được 
Cú pháp: <?php $this->Model->find(‘all’); ?> 
Ví dụ 1: Tìm tất cả thành viên trong bảng User 
<?php $this->User->find(‘all’); ?> 
Ví dụ 2: Tìm thành viên với id=2 
<?php 
$this->User->find(‘all’, array(‘conditions’ => array(User.id =>2))); 
?> 
 find(‘first’): trả về một kết quả duy nhất 
Cú pháp: <?php $this->Model-> find(‘first’); ?> 
Ví dụ: Tìm thành viên. Trả về với thành viên có id=1 
<?php $this->User->find(‘first’); ?>
2. MVC TRONG CAKEPHP 
22 
2.2.1 Lấy dữ liệu 
 Dùng hàm find($type, $param) 
 find(‘count’): kết quả trả về là một số nguyên 
Cú pháp: <?php $this->Model->find(‘count’); ?> 
Ví dụ : Đếm tất cả thành viên 
<?php $this->User->find(‘count’); ?> 
 find(‘list’): trả về một mảng danh sách thường dùng 
trong input của dropdown hay selectbox 
Cú pháp: <?php $this->Model-> find(‘list’); ?> 
Ví dụ: Hiển thị list username 
<?php $this->User->find(‘list’); ?> 
Kết quả: 
array([1] => user1, [2] =>user2)
2. MVC TRONG CAKEPHP 
23 
2.2.1 Lấy dữ liệu 
 Dùng hàm find($type, $param) 
 find(‘neighbor’): tương tự như find(‘list’), nhưng kết quả 
trả về là kết quả đứng trước và đứng sau 
Cú pháp: <?php $this->Model->find(‘neighbor’, $param); ?> 
Ví dụ: 
<?php $this->User->find(‘neighbor’, array(‘field’ =>’id’, ‘value’=>2));?> 
Kết quả: 
array( 
[prev] => array([User] =>array([id] => 1, [username] => user1)) 
[next] => array([User] =>array([id] => 3, [username] => user3)) 
)
2. MVC TRONG CAKEPHP 
24 
2.2.1 Lấy dữ liệu 
 Dùng câu truy vấn 
Cú pháp: <?php $this->Model->query(‘SQL query’); ?> 
Ví dụ: 
<?php $this->User->query(‘select * form users where id=1’) 
Kết quả: 
array( 
[0] => array([User] =>array([id] => 1, [username] => user1)) 
)
2. MVC TRONG CAKEPHP 
25 
2.2.2 Lưu dữ liệu 
 Dùng hàm save() 
 Save không có tham số: Sử dụng kết hợp với set() 
Cú pháp: 
<?php $this->Model->set(‘fieldname’, ‘value’); ?> 
<?php $this->Model->save(); ?> 
Ví dụ: 
<?php 
$this->User->set(array(‘username’ => ‘user1’, ‘email’ => 
‘user1@gmail.com’)); 
$this->User->save(); 
?>
2. MVC TRONG CAKEPHP 
26 
2.2.2 Lưu dữ liệu 
 Dùng hàm saveField(): Sử dụng khi muốn lưu một trường 
dữ liệu trong bảng 
Cú pháp: 
<?php $this->Model->saveField(‘fieldname’, ‘value’); ?> 
Ví dụ: 
<?php $this->User->saveField(‘username’,’use1’); ?>
2. MVC TRONG CAKEPHP 
2.2.3 Các mệnh đề điều kiện khi truy vấn 
 Truy vấn có điều kiện: Trong CakePHP conditions tương 
đương mệnh đề WHERE trong SQl, array là tập hợp các 
điều kiện của WHERE 
Cú pháp: 
27 
‘conditions’ => array() 
Ví dụ: 
<?php 
$this->User->find(‘all’, array(‘conditions’=> array(‘User.id’ => 1))) 
?> 
Trong truy vấn SQL: 
select * from User where id=1
2. MVC TRONG CAKEPHP 
2.2.3 Các mệnh đề điều kiện khi truy vấn 
 Các biểu thức logic: Các biểu thức điều kiện trong 
CakePHP đều được thể hiện dưới một phần tử của mảng. 
Gồm các biểu thức điều kiện: AND, OR, NOT… 
Ví dụ: Tìm tất cả User có tham số active =1, hoặc thuộc 
group có id=1 
28 
<?php 
$this->User->find(‘all’, array(‘conditions’=> array(‘or’ => 
array(‘User.active’=>1, ‘User.group_id’=>1)))); ?> 
Ví dụ: Tìm user không phải là admin 
<?php $this->user->find(‘all’, array(‘conditions’ => 
array(‘not’=>array(‘User.username’ => ‘admin’)))); ?>
2. MVC TRONG CAKEPHP 
29 
2.3 Controller 
Controller điều khiển luồng xử lý của ứng dụng. Trong 
Controller thường chứa những lệnh gọi tới Model để truy 
cập dữ liệu. Controller được xem là tầng điều khiển của 
ứng dụng. Controller chỉ nên khai báo các action(gọi là 
phương thức xử lý, được đặt trùng tên với tên file View). 
Cách khai báo Controller: 
class DemosController extends AppController{ 
var $name = ‘Demos’; 
function add() { 
…………………………. 
} 
}
2. MVC TRONG CAKEPHP 
30 
2.3 Controller 
 Session Component 
 Khai báo Session 
var $components = array(‘Session’); 
 Các sử dụng: 
 write ($name, $value): lưu session có giá trị 
$value vào $name 
 read($name): đọc session thông qua $name 
 check($name): kiểm tra session có tồn tại hay 
không 
 delete($key): xóa session thông qua tên 
 destroy(): xóa toàn bộ session 
 error(): xác định lỗi cuối cùng liên qua đến session
2. MVC TRONG CAKEPHP 
31 
2.3 Controller 
 Ví dụ: 
 write: <?php $this->Session->write(‘username’,’user1’); ?> 
 read: <?php $this->Session->read(‘username’); ?> 
 check: <?php $this->Session->check(‘username’); ?> 
 delete: <?php $this->Session->delete(‘username’); ?> 
 destroy: <?php $this->Session->destroy(); ?>
E learning lab - Tim hieu Cake PHP

More Related Content

What's hot

Wp hoi-thao-phan-quyen
Wp hoi-thao-phan-quyenWp hoi-thao-phan-quyen
Wp hoi-thao-phan-quyenKhanhPham
 
Bài 2 Các kỹ thuật lập trình MySQL với PHP nâng cao - Xây dựng ứng dụng web
Bài 2 Các kỹ thuật lập trình MySQL với PHP nâng cao - Xây dựng ứng dụng webBài 2 Các kỹ thuật lập trình MySQL với PHP nâng cao - Xây dựng ứng dụng web
Bài 2 Các kỹ thuật lập trình MySQL với PHP nâng cao - Xây dựng ứng dụng webMasterCode.vn
 
Bài 4 Bảo mật cho website - Xây dựng ứng dụng web
Bài 4 Bảo mật cho website - Xây dựng ứng dụng webBài 4 Bảo mật cho website - Xây dựng ứng dụng web
Bài 4 Bảo mật cho website - Xây dựng ứng dụng webMasterCode.vn
 
Bài 3 Lập trình PHP (phần 1) - Giáo trình FPT
Bài 3 Lập trình PHP (phần 1) - Giáo trình FPTBài 3 Lập trình PHP (phần 1) - Giáo trình FPT
Bài 3 Lập trình PHP (phần 1) - Giáo trình FPTMasterCode.vn
 
Lap trinh giao dien nguoi dung voi Java
Lap trinh giao dien nguoi dung voi JavaLap trinh giao dien nguoi dung voi Java
Lap trinh giao dien nguoi dung voi JavaANHMATTROI
 
Tài liệu lập trình Wordpress - bài 5 - Action và Action hook trong Wordpress
Tài liệu lập trình Wordpress - bài 5 - Action và Action hook trong WordpressTài liệu lập trình Wordpress - bài 5 - Action và Action hook trong Wordpress
Tài liệu lập trình Wordpress - bài 5 - Action và Action hook trong WordpressKhanhPham
 
The First 2015 Saigon WordPress Meetup
The First 2015 Saigon WordPress MeetupThe First 2015 Saigon WordPress Meetup
The First 2015 Saigon WordPress MeetupKhanhPham
 
Cursor & Function trong SQL Server
Cursor & Function trong SQL ServerCursor & Function trong SQL Server
Cursor & Function trong SQL ServerHuy Vũ
 
Bài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng web
Bài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng webBài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng web
Bài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng webMasterCode.vn
 
Lớp kết nối csdl dùng jdbc trong java
Lớp kết nối csdl dùng jdbc trong javaLớp kết nối csdl dùng jdbc trong java
Lớp kết nối csdl dùng jdbc trong javaANHMATTROI
 
Bài 5: Hàm người dùng định nghĩa & VIEW - Giáo trình FPT
Bài 5: Hàm người dùng định nghĩa & VIEW - Giáo trình FPTBài 5: Hàm người dùng định nghĩa & VIEW - Giáo trình FPT
Bài 5: Hàm người dùng định nghĩa & VIEW - Giáo trình FPTMasterCode.vn
 
Bài 5 Chức năng gửi email cho website - Xây dựng ứng dụng web
Bài 5 Chức năng gửi email cho website - Xây dựng ứng dụng webBài 5 Chức năng gửi email cho website - Xây dựng ứng dụng web
Bài 5 Chức năng gửi email cho website - Xây dựng ứng dụng webMasterCode.vn
 
Hỏi tình hình bk tiny bktiny-hdsd
Hỏi tình hình bk tiny   bktiny-hdsdHỏi tình hình bk tiny   bktiny-hdsd
Hỏi tình hình bk tiny bktiny-hdsdVu Hung Nguyen
 

What's hot (20)

Web301 slide 2
Web301   slide 2Web301   slide 2
Web301 slide 2
 
Wp hoi-thao-phan-quyen
Wp hoi-thao-phan-quyenWp hoi-thao-phan-quyen
Wp hoi-thao-phan-quyen
 
Bài 2 Các kỹ thuật lập trình MySQL với PHP nâng cao - Xây dựng ứng dụng web
Bài 2 Các kỹ thuật lập trình MySQL với PHP nâng cao - Xây dựng ứng dụng webBài 2 Các kỹ thuật lập trình MySQL với PHP nâng cao - Xây dựng ứng dụng web
Bài 2 Các kỹ thuật lập trình MySQL với PHP nâng cao - Xây dựng ứng dụng web
 
Bài 4 Bảo mật cho website - Xây dựng ứng dụng web
Bài 4 Bảo mật cho website - Xây dựng ứng dụng webBài 4 Bảo mật cho website - Xây dựng ứng dụng web
Bài 4 Bảo mật cho website - Xây dựng ứng dụng web
 
Bài 3 Lập trình PHP (phần 1) - Giáo trình FPT
Bài 3 Lập trình PHP (phần 1) - Giáo trình FPTBài 3 Lập trình PHP (phần 1) - Giáo trình FPT
Bài 3 Lập trình PHP (phần 1) - Giáo trình FPT
 
Lap trinh giao dien nguoi dung voi Java
Lap trinh giao dien nguoi dung voi JavaLap trinh giao dien nguoi dung voi Java
Lap trinh giao dien nguoi dung voi Java
 
Tài liệu lập trình Wordpress - bài 5 - Action và Action hook trong Wordpress
Tài liệu lập trình Wordpress - bài 5 - Action và Action hook trong WordpressTài liệu lập trình Wordpress - bài 5 - Action và Action hook trong Wordpress
Tài liệu lập trình Wordpress - bài 5 - Action và Action hook trong Wordpress
 
The First 2015 Saigon WordPress Meetup
The First 2015 Saigon WordPress MeetupThe First 2015 Saigon WordPress Meetup
The First 2015 Saigon WordPress Meetup
 
Cursor & Function trong SQL Server
Cursor & Function trong SQL ServerCursor & Function trong SQL Server
Cursor & Function trong SQL Server
 
Bài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng web
Bài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng webBài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng web
Bài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng web
 
Lớp kết nối csdl dùng jdbc trong java
Lớp kết nối csdl dùng jdbc trong javaLớp kết nối csdl dùng jdbc trong java
Lớp kết nối csdl dùng jdbc trong java
 
Lesson 2 lý thuyết
Lesson 2 lý thuyếtLesson 2 lý thuyết
Lesson 2 lý thuyết
 
Bài 5: Hàm người dùng định nghĩa & VIEW - Giáo trình FPT
Bài 5: Hàm người dùng định nghĩa & VIEW - Giáo trình FPTBài 5: Hàm người dùng định nghĩa & VIEW - Giáo trình FPT
Bài 5: Hàm người dùng định nghĩa & VIEW - Giáo trình FPT
 
Jquery
JqueryJquery
Jquery
 
Laptrinh jdbc
Laptrinh jdbcLaptrinh jdbc
Laptrinh jdbc
 
Lesson 2 practice
Lesson 2 practiceLesson 2 practice
Lesson 2 practice
 
Web301 slide 4
Web301   slide 4Web301   slide 4
Web301 slide 4
 
Bài 5 Chức năng gửi email cho website - Xây dựng ứng dụng web
Bài 5 Chức năng gửi email cho website - Xây dựng ứng dụng webBài 5 Chức năng gửi email cho website - Xây dựng ứng dụng web
Bài 5 Chức năng gửi email cho website - Xây dựng ứng dụng web
 
Hỏi tình hình bk tiny bktiny-hdsd
Hỏi tình hình bk tiny   bktiny-hdsdHỏi tình hình bk tiny   bktiny-hdsd
Hỏi tình hình bk tiny bktiny-hdsd
 
Web201 slide 2
Web201   slide 2Web201   slide 2
Web201 slide 2
 

Similar to E learning lab - Tim hieu Cake PHP

Devwork.vn Tài liệu lập trình PHP Laravel
Devwork.vn Tài liệu lập trình PHP LaravelDevwork.vn Tài liệu lập trình PHP Laravel
Devwork.vn Tài liệu lập trình PHP LaravelDevwork
 
Tutoria mvc framework
Tutoria mvc frameworkTutoria mvc framework
Tutoria mvc frameworkXuan Le
 
Bài 5 Hướng dẫn xây dựng Extension
Bài 5 Hướng dẫn xây dựng ExtensionBài 5 Hướng dẫn xây dựng Extension
Bài 5 Hướng dẫn xây dựng ExtensionMasterCode.vn
 
Bai2 tong quan_mvc_0567
Bai2 tong quan_mvc_0567Bai2 tong quan_mvc_0567
Bai2 tong quan_mvc_0567Ham Chơi
 
Qtu.vn sql - chuong 7
Qtu.vn  sql - chuong 7Qtu.vn  sql - chuong 7
Qtu.vn sql - chuong 7Hoang le Minh
 
Bài 3: Servlet - Lập Trình Mạng Nâng Cao
Bài 3: Servlet - Lập Trình Mạng Nâng CaoBài 3: Servlet - Lập Trình Mạng Nâng Cao
Bài 3: Servlet - Lập Trình Mạng Nâng CaoTuan Nguyen
 
Technical note playframework_documentation_working with play - java_vn
Technical note playframework_documentation_working with play - java_vnTechnical note playframework_documentation_working with play - java_vn
Technical note playframework_documentation_working with play - java_vnAsahina Infotech
 
Lập trình web với các công nghệ phổ biến
Lập trình web với các công nghệ phổ biếnLập trình web với các công nghệ phổ biến
Lập trình web với các công nghệ phổ biếnSon Nguyen
 
TÀI LIỆU HƯỚNG VIẾT MODULE VÀ WEBSERVICE CHO MAGENTO 1.7
TÀI LIỆU HƯỚNG VIẾT MODULE VÀ WEBSERVICE CHO MAGENTO 1.7TÀI LIỆU HƯỚNG VIẾT MODULE VÀ WEBSERVICE CHO MAGENTO 1.7
TÀI LIỆU HƯỚNG VIẾT MODULE VÀ WEBSERVICE CHO MAGENTO 1.7dvms
 
PHP.pdf
PHP.pdfPHP.pdf
PHP.pdfTinPh6
 
Kiến thức cần thiết làm việc
Kiến thức cần thiết làm việcKiến thức cần thiết làm việc
Kiến thức cần thiết làm việcmanhvokiem
 

Similar to E learning lab - Tim hieu Cake PHP (20)

Web301 slide 1
Web301   slide 1Web301   slide 1
Web301 slide 1
 
Devwork.vn Tài liệu lập trình PHP Laravel
Devwork.vn Tài liệu lập trình PHP LaravelDevwork.vn Tài liệu lập trình PHP Laravel
Devwork.vn Tài liệu lập trình PHP Laravel
 
Yii
YiiYii
Yii
 
Aspnet 3.5 _04
Aspnet 3.5 _04Aspnet 3.5 _04
Aspnet 3.5 _04
 
Mvc Model
Mvc ModelMvc Model
Mvc Model
 
Tutoria mvc framework
Tutoria mvc frameworkTutoria mvc framework
Tutoria mvc framework
 
Giới thiệu Yii Framework 1
Giới thiệu Yii Framework 1Giới thiệu Yii Framework 1
Giới thiệu Yii Framework 1
 
Bài 5 Hướng dẫn xây dựng Extension
Bài 5 Hướng dẫn xây dựng ExtensionBài 5 Hướng dẫn xây dựng Extension
Bài 5 Hướng dẫn xây dựng Extension
 
Bai2 tong quan_mvc_0567
Bai2 tong quan_mvc_0567Bai2 tong quan_mvc_0567
Bai2 tong quan_mvc_0567
 
Qtu.vn sql - chuong 7
Qtu.vn  sql - chuong 7Qtu.vn  sql - chuong 7
Qtu.vn sql - chuong 7
 
Ch06
Ch06Ch06
Ch06
 
Bài 3: Servlet - Lập Trình Mạng Nâng Cao
Bài 3: Servlet - Lập Trình Mạng Nâng CaoBài 3: Servlet - Lập Trình Mạng Nâng Cao
Bài 3: Servlet - Lập Trình Mạng Nâng Cao
 
Technical note playframework_documentation_working with play - java_vn
Technical note playframework_documentation_working with play - java_vnTechnical note playframework_documentation_working with play - java_vn
Technical note playframework_documentation_working with play - java_vn
 
C5. Model, DataSharing.pdf
C5. Model, DataSharing.pdfC5. Model, DataSharing.pdf
C5. Model, DataSharing.pdf
 
Giao trinh java script
Giao trinh java scriptGiao trinh java script
Giao trinh java script
 
Lập trình web với các công nghệ phổ biến
Lập trình web với các công nghệ phổ biếnLập trình web với các công nghệ phổ biến
Lập trình web với các công nghệ phổ biến
 
TÀI LIỆU HƯỚNG VIẾT MODULE VÀ WEBSERVICE CHO MAGENTO 1.7
TÀI LIỆU HƯỚNG VIẾT MODULE VÀ WEBSERVICE CHO MAGENTO 1.7TÀI LIỆU HƯỚNG VIẾT MODULE VÀ WEBSERVICE CHO MAGENTO 1.7
TÀI LIỆU HƯỚNG VIẾT MODULE VÀ WEBSERVICE CHO MAGENTO 1.7
 
Báo cáo tuần đồ án
Báo cáo tuần đồ ánBáo cáo tuần đồ án
Báo cáo tuần đồ án
 
PHP.pdf
PHP.pdfPHP.pdf
PHP.pdf
 
Kiến thức cần thiết làm việc
Kiến thức cần thiết làm việcKiến thức cần thiết làm việc
Kiến thức cần thiết làm việc
 

Recently uploaded

Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hộiTrắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hộiNgocNguyen591215
 
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...Nguyen Thanh Tu Collection
 
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docxasdnguyendinhdang
 
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...hoangtuansinh1
 
20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...
20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...
20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...Nguyen Thanh Tu Collection
 
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...Nguyen Thanh Tu Collection
 
Giáo trình nhập môn lập trình - Đặng Bình Phương
Giáo trình nhập môn lập trình - Đặng Bình PhươngGiáo trình nhập môn lập trình - Đặng Bình Phương
Giáo trình nhập môn lập trình - Đặng Bình Phươnghazzthuan
 
các nội dung phòng chống xâm hại tình dục ở trẻ em
các nội dung phòng chống xâm hại tình dục ở trẻ emcác nội dung phòng chống xâm hại tình dục ở trẻ em
các nội dung phòng chống xâm hại tình dục ở trẻ emTrangNhung96
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
bài thi bảo vệ nền tảng tư tưởng của Đảng.docx
bài thi bảo vệ nền tảng tư tưởng của Đảng.docxbài thi bảo vệ nền tảng tư tưởng của Đảng.docx
bài thi bảo vệ nền tảng tư tưởng của Đảng.docxTrnHiYn5
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...Nguyen Thanh Tu Collection
 
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdfltbdieu
 
bài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hànhbài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hànhdangdinhkien2k4
 
Tử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận Hạn
Tử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận HạnTử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận Hạn
Tử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận HạnKabala
 
Bài học phòng cháy chữa cháy - PCCC tại tòa nhà
Bài học phòng cháy chữa cháy - PCCC tại tòa nhàBài học phòng cháy chữa cháy - PCCC tại tòa nhà
Bài học phòng cháy chữa cháy - PCCC tại tòa nhàNguyen Thi Trang Nhung
 
Kiến thức cơ bản về tư duy số - VTC Net Viet
Kiến thức cơ bản về tư duy số - VTC Net VietKiến thức cơ bản về tư duy số - VTC Net Viet
Kiến thức cơ bản về tư duy số - VTC Net VietNguyễn Quang Huy
 
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdfxemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdfXem Số Mệnh
 
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdfxemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdfXem Số Mệnh
 
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng TạoĐề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạowindcances
 

Recently uploaded (20)

Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hộiTrắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
Trắc nghiệm CHƯƠNG 5 môn Chủ nghĩa xã hội
 
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
TUYỂN TẬP ĐỀ THI GIỮA KÌ, CUỐI KÌ 2 MÔN VẬT LÍ LỚP 11 THEO HÌNH THỨC THI MỚI ...
 
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
60 CÂU HỎI ÔN TẬP LÝ LUẬN CHÍNH TRỊ NĂM 2024.docx
 
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
Danh sách sinh viên tốt nghiệp Đại học - Cao đẳng Trường Đại học Phú Yên năm ...
 
20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...
20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...
20 ĐỀ DỰ ĐOÁN - PHÁT TRIỂN ĐỀ MINH HỌA BGD KỲ THI TỐT NGHIỆP THPT NĂM 2024 MÔ...
 
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
ĐỀ KIỂM TRA CUỐI KÌ 2 BIÊN SOẠN THEO ĐỊNH HƯỚNG ĐỀ BGD 2025 MÔN TOÁN 10 - CÁN...
 
Giáo trình nhập môn lập trình - Đặng Bình Phương
Giáo trình nhập môn lập trình - Đặng Bình PhươngGiáo trình nhập môn lập trình - Đặng Bình Phương
Giáo trình nhập môn lập trình - Đặng Bình Phương
 
các nội dung phòng chống xâm hại tình dục ở trẻ em
các nội dung phòng chống xâm hại tình dục ở trẻ emcác nội dung phòng chống xâm hại tình dục ở trẻ em
các nội dung phòng chống xâm hại tình dục ở trẻ em
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
bài thi bảo vệ nền tảng tư tưởng của Đảng.docx
bài thi bảo vệ nền tảng tư tưởng của Đảng.docxbài thi bảo vệ nền tảng tư tưởng của Đảng.docx
bài thi bảo vệ nền tảng tư tưởng của Đảng.docx
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
TUYỂN TẬP 50 ĐỀ LUYỆN THI TUYỂN SINH LỚP 10 THPT MÔN TOÁN NĂM 2024 CÓ LỜI GIẢ...
 
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
26 Truyện Ngắn Sơn Nam (Sơn Nam) thuviensach.vn.pdf
 
bài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hànhbài tập lớn môn kiến trúc máy tính và hệ điều hành
bài tập lớn môn kiến trúc máy tính và hệ điều hành
 
Tử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận Hạn
Tử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận HạnTử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận Hạn
Tử Vi Là Gì Học Luận Giải Tử Vi Và Luận Đoán Vận Hạn
 
Bài học phòng cháy chữa cháy - PCCC tại tòa nhà
Bài học phòng cháy chữa cháy - PCCC tại tòa nhàBài học phòng cháy chữa cháy - PCCC tại tòa nhà
Bài học phòng cháy chữa cháy - PCCC tại tòa nhà
 
Kiến thức cơ bản về tư duy số - VTC Net Viet
Kiến thức cơ bản về tư duy số - VTC Net VietKiến thức cơ bản về tư duy số - VTC Net Viet
Kiến thức cơ bản về tư duy số - VTC Net Viet
 
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdfxemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
xemsomenh.com-Vòng Tràng Sinh - Cách An 12 Sao Và Ý Nghĩa Từng Sao.pdf
 
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdfxemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
xemsomenh.com-Vòng Thái Tuế và Ý Nghĩa Các Sao Tại Cung Mệnh.pdf
 
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng TạoĐề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
Đề thi tin học HK2 lớp 3 Chân Trời Sáng Tạo
 

E learning lab - Tim hieu Cake PHP

  • 1. E-Learning Lab Thí sinh dự thi “Dạy Online – Share khoảnh khắc” Link: http://home.e-learninglab.co/su-kien/
  • 3. NỘI DUNG TRÌNH BÀY 1 GIỚI THIỆU CAKEPHP 2 MÔ HÌNH MVC TRONG CAKEPHP FRAMEWORK 1
  • 4. 1. GIỚI THIỆU CAKEPHP CakePHP là một Framework phát triển ứng dụng web mã nguồn mở. Mục tiêu chính là cho phép bạn làm việc một cách nhanh chóng và có cấu trúc mà không làm mất tính linh hoạt. CakePHP được cấp phép theo giấy phép MIT. Có nghĩa là bạn được tự do sửa đổi, phân phối và phát hành lại mã nguồn với điều kiện là bản quyền còn nguyên vẹn. Bạn cũng được miễn phí để kết hợp CakePHP vào bất kỳ ứng dụng thương mại hoặc ứng dụng mã nguồn đóng. 2
  • 5. 1. GIỚI THIỆU CAKEPHP 3  Đặc điểm nổi bật: - Mã nguồn mở, miễn phí - Xây dựng theo mô hình MVC - Xây dựng nhiều thư viện hỗ trợ cho View như: Ajax, HTML Form, Javascrip…. - Xây dựng nhiều thư viện hỗ trợ cho Controller: Email, Session, Cookies… - Kiểm tra rang buộc dữ liệu.
  • 6. 1.GIỚI THIỆU CAKEPHP THỨ HẠNG CỦA CAKEPHP Số Thứ Tự Hot PHP Framework Ranking PHP Framework 1 Yii Yii 2 CodeIgniter PHPOpenbiz 3 CakePHP CodeIgniter 4 Zend CakePHP 5 Symfony Symfony 6 PHPDevShell PHPDevShell 7 Prado Prado 8 Akelos Akelos 9 ZooP Zend 10 QPHP eZ Components 4
  • 7. 1.GIỚI THIỆU CAKEPHP Một số website ứng dụng framework CakePHP Website Teamspeak.net 5
  • 8. 1.GIỚI THIỆU CAKEPHP Một số website ứng dụng framework CakePHP Website followmy.tv 6
  • 9. 2. MVC TRONG CAKEPHP (1): Yêu cầu của người dung được gửi đến Controller (2): Controller sẽ xử lý yêu cầu(thêm, cập nhật….) và gọi tới Model để truy cập dữ liệu. (3): Model sẽ thực hiện yêu cầu của Controller bằng cách lấy cập nhật hoặc lưu trữ dữ liệu và trả lời cho Controller. (4): Sau đó Controller sẽ trả dữ liệu đầu ra đến View. (5): View sẽ thể hiện kết quả của yêu cầu người dùng ra với một định dạng xác định. 7  Sơ đồ hoạt động của mô hình MVC
  • 10. 2. MVC TRONG CAKEPHP 8 2.1 View View là những dữ liệu đầu ra hay gọi là dữ liệu trả về cho người dùng khi một yêu cầu được thực thi. Nó cơ bản chứa những đoạn mã HTML nhúng với các đoạn mã PHP. View được xem giống như tầng đại diện cho bộ mặt của ứng dụng. Không thể gọi View một cách trực tiếp mà phải thông qua Controller. Một số thư viện hỗ trợ cho view như: FormHelper, HTMLHelper…
  • 11. 2. MVC TRONG CAKEPHP 9 2.1.1 FormHelper - Tạo Form: <?php echo $this->Form->create('Nhacungcap', array(‘inputDefaults’ => array(‘div’ =>false))); ?> Trong đó: • inputDefaults: thiết lập giá trị mặc định cho các input của Form như bỏ đi lable hay div trong Form. • type: phương thức của Form, có thể là get, post, file(dùng trong file Upload).... Mặc định của type là post. • action: sử dụng để xử lý dữ liệu, action trong Cakephp được viết thành function nằm trong Controller. - Kết thúc Form: <?php echo $this->Form->end();?>
  • 12. 2. MVC TRONG CAKEPHP 2.1.1 FormHelper - Ngoài ra còn sử dụng một số input phổ biến: 10 • textbox: Cách 1: <?php echo $this->Form->textbox(‘vidu’); ?> Cách 2: <?php echo $this->Form->input(‘vidu’, array(‘type’ => ‘text’, ‘name’ => ‘vidu’));?> • textarea: Cách 1: <?php echo $this->Form->textarea(‘textarea’)?> Cách 2: <?php echo $this->Form->input(‘textarea’, array(‘type’ => ‘textarea’, ‘name’ => ‘textarea’)); ?> • password: Cách 1: <?php echo $this->Form->password(); ?> Cách 2: <?php echo $this->Form->input(‘password’, array(‘type’ => ‘password’, ‘name’ => ‘password’));?>
  • 13. 2. MVC TRONG CAKEPHP 11 2.1.2 HTMLHelper Vai trò của HtmlHelper trong CakePHP là thực hiện những tùy chọn liên quan đến HTML nhanh hơn, dễ dàng hơn và dễ thay đổi. Sau đây là một số phương thức của HtmlHelper và cách sử dụng: • HtmlHelper::charset() • HtmlHelper::css() • HtmlHelper::docType() • HtmlHelper::image() • HtmlHelper::link () • HtmlHelper::script()
  • 14. 2. MVC TRONG CAKEPHP 12 2.1.2.1 HtmlHelper::charset($charset==null)  Sử dụng để tạo thẻ meta, mặc định là UTF-8.  Cú pháp: <?php echo $this->Html->charset(); ?>  Kết quả: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  • 15. 2. MVC TRONG CAKEPHP 13 2.1.2.2 HtmlHelper::css($path, array options=array())  Trong đó: • $path: đường dẫn • $options(array): mảng các tùy chọn  Cú pháp: <?php echo $this->Html->css(array('reponsive', 'menu')); ?> <?php echo $this->Html->charset(); ?>  Kết quả: <link rel="stylesheet" type="text/css" href="/css/main.css" /> <link rel="stylesheet" type="text/css" href="/css/reponsive.css" /> <link rel="stylesheet" type="text/css" href="/css/menu.css" />
  • 16. 2. MVC TRONG CAKEPHP 14 2.1.2.3 HtmlHelper::doctype(string $type=‘xhtml-stric’)  $type: loại doctype được sử dụng  Các loại doctype: Loại Mô tả html4-strict HTML4 Strict html4-trans HTML4 Transitional html4-frame HTML4 Frameset html5 HTML5 xhtml-strict XHTML1 Strict xhtml-trans XHTML1 Transitional xhtml-frame XHTML1 Frameset xhtml11 XHTML1.1 Ví dụ: <?php echo $this->Html-> docType(); ?> <?php echo $this->Html-> docType(‘html5’); ?> <?php echo $this->Html-> docType(‘html4-trans’); ?>
  • 17. 2. MVC TRONG CAKEPHP 2.1.2.4 HtmlHelper::image(string $path, array options=array()) 15  Tạo ra một thẻ định dạng hình ảnh. Trong đó: • $path: đường dẫn đến hình ảnh • $options(array): mảng các tùy chọn  Ví dụ: <?php echo $this->Html->image('cake_logo.png'); ?>  Kết quả: <img src="/img/cake_logo.png"/>
  • 18. 2. MVC TRONG CAKEPHP 2.1.2.5 HtmlHelper::link($title, $url=null, array options=array(), $confirmMessage=false) 16  Trong đó: • $path: Tên liên kết • $options(array): mảng các tùy chọn của HTML • $url: đường dẫn  Ví dụ: <?php echo $this->Html->link('Delete',array('controller' => 'recipes', 'action' => 'delete', 6),array(),"Bạn chắc muốn xóa?"); ?>  Kết quả: <a href="/recipes/delete/6" onclick="return confirm('Bạn chắc muốn xóa?');">Delete</a>
  • 19. 2. MVC TRONG CAKEPHP 2.1.2.6 HtmlHelper::script($url=null, array options=array()) 17  Trong đó: • $url: đường dẫn đến một file javascript hay nhiều file javascript • Options: mảng các tùy chọn HTML  Ví dụ: <?php echo $this->Html->script(‘scripts’); ?>  Kết quả: <script type="text/javascript" href="/js/scripts.js"></script>
  • 20. 2. MVC TRONG CAKEPHP 17 2.1.3 SessionHelper  Khai báo Session: var $helper=array(‘Session’); Gọi sử dụng: $session -> method(); Các phương thức chính: • read($key): Đọc Session. Trả về một chuỗi hoặc một mảng tùy vào nội dung Session. • check($key): Kiểm tra sự tồn tại của Session. • error(): Xác định lỗi liên quan đến Session. • flash($key= ‘flash’, array $params=array()): Hiển thị thông báo.
  • 21. 2. MVC TRONG CAKEPHP 18 2.2 Model Model là những lớp được xây dựng nhằm trao đổi thông tin với cơ sở dữ liệu. Một lớp Model có thể thực hiện các tác vụ truy vấn thêm, xóa, cập nhật dữ liệu. Model nằm trong thư mục /app/Model chứa mã nguồn ứng dụng. Model chứa các file Model, Behavior, Datasource. Cách khai báo Model: class TenModel extends AppModel { ……………………. }
  • 22. 2. MVC TRONG CAKEPHP 19 2.2.1 Lấy dữ liệu  Dùng hàm find($type, $param) Cú pháp: <?php $this->Model->find($type, $params); ?> Trong đó: • $type: phương thức truy vấn dữ liệu. Có thể là ‘all’, ‘first’, ‘list’, ‘count’, ‘neighbors’, ‘threaded’. Giá trị mặc định là ‘first’. • $param: mảng tập hợp các điều kiện lấy dữ liệu, gom cụm dữ liệu, sắp xếp hoặc thể hiện dữ liệu
  • 23. 2. MVC TRONG CAKEPHP 20 2.2.1 Lấy dữ liệu  Dùng hàm find($type, $param)  Một số tùy chọn $param: array( 'conditions' => array('Model.field' => $thisValue), //mảng các điều kiện tìm kiếm 'recursive' => 1,// la mot gia tri so nguyen, co the la -1, 0, 1 hoac 2 'fields' => array('Model.field1', 'DISTINCT Model.field2'),//mang cac cot du lieu muon lay ra 'order' => array('Model.created', 'Model.field3 DESC'), //menh de ORDER BY sap xep thu tu ket qua sau khi tim kiem la tang dan (ASC) hoac giam dan (DESC) group' => array('Model.field'), //menh de GROUP BY 'limit' => n, //so nguyen 'page' => n, //so nguyen 'offset'=>n, //so nguyen 'callbacks' => true //cac gia tri bao gom true, false, 'before', 'after‘ )
  • 24. 2. MVC TRONG CAKEPHP 21 2.2.1 Lấy dữ liệu  Dùng hàm find($type, $param)  find(‘all’): trả về tất cả kết quả tìm được Cú pháp: <?php $this->Model->find(‘all’); ?> Ví dụ 1: Tìm tất cả thành viên trong bảng User <?php $this->User->find(‘all’); ?> Ví dụ 2: Tìm thành viên với id=2 <?php $this->User->find(‘all’, array(‘conditions’ => array(User.id =>2))); ?>  find(‘first’): trả về một kết quả duy nhất Cú pháp: <?php $this->Model-> find(‘first’); ?> Ví dụ: Tìm thành viên. Trả về với thành viên có id=1 <?php $this->User->find(‘first’); ?>
  • 25. 2. MVC TRONG CAKEPHP 22 2.2.1 Lấy dữ liệu  Dùng hàm find($type, $param)  find(‘count’): kết quả trả về là một số nguyên Cú pháp: <?php $this->Model->find(‘count’); ?> Ví dụ : Đếm tất cả thành viên <?php $this->User->find(‘count’); ?>  find(‘list’): trả về một mảng danh sách thường dùng trong input của dropdown hay selectbox Cú pháp: <?php $this->Model-> find(‘list’); ?> Ví dụ: Hiển thị list username <?php $this->User->find(‘list’); ?> Kết quả: array([1] => user1, [2] =>user2)
  • 26. 2. MVC TRONG CAKEPHP 23 2.2.1 Lấy dữ liệu  Dùng hàm find($type, $param)  find(‘neighbor’): tương tự như find(‘list’), nhưng kết quả trả về là kết quả đứng trước và đứng sau Cú pháp: <?php $this->Model->find(‘neighbor’, $param); ?> Ví dụ: <?php $this->User->find(‘neighbor’, array(‘field’ =>’id’, ‘value’=>2));?> Kết quả: array( [prev] => array([User] =>array([id] => 1, [username] => user1)) [next] => array([User] =>array([id] => 3, [username] => user3)) )
  • 27. 2. MVC TRONG CAKEPHP 24 2.2.1 Lấy dữ liệu  Dùng câu truy vấn Cú pháp: <?php $this->Model->query(‘SQL query’); ?> Ví dụ: <?php $this->User->query(‘select * form users where id=1’) Kết quả: array( [0] => array([User] =>array([id] => 1, [username] => user1)) )
  • 28. 2. MVC TRONG CAKEPHP 25 2.2.2 Lưu dữ liệu  Dùng hàm save()  Save không có tham số: Sử dụng kết hợp với set() Cú pháp: <?php $this->Model->set(‘fieldname’, ‘value’); ?> <?php $this->Model->save(); ?> Ví dụ: <?php $this->User->set(array(‘username’ => ‘user1’, ‘email’ => ‘user1@gmail.com’)); $this->User->save(); ?>
  • 29. 2. MVC TRONG CAKEPHP 26 2.2.2 Lưu dữ liệu  Dùng hàm saveField(): Sử dụng khi muốn lưu một trường dữ liệu trong bảng Cú pháp: <?php $this->Model->saveField(‘fieldname’, ‘value’); ?> Ví dụ: <?php $this->User->saveField(‘username’,’use1’); ?>
  • 30. 2. MVC TRONG CAKEPHP 2.2.3 Các mệnh đề điều kiện khi truy vấn  Truy vấn có điều kiện: Trong CakePHP conditions tương đương mệnh đề WHERE trong SQl, array là tập hợp các điều kiện của WHERE Cú pháp: 27 ‘conditions’ => array() Ví dụ: <?php $this->User->find(‘all’, array(‘conditions’=> array(‘User.id’ => 1))) ?> Trong truy vấn SQL: select * from User where id=1
  • 31. 2. MVC TRONG CAKEPHP 2.2.3 Các mệnh đề điều kiện khi truy vấn  Các biểu thức logic: Các biểu thức điều kiện trong CakePHP đều được thể hiện dưới một phần tử của mảng. Gồm các biểu thức điều kiện: AND, OR, NOT… Ví dụ: Tìm tất cả User có tham số active =1, hoặc thuộc group có id=1 28 <?php $this->User->find(‘all’, array(‘conditions’=> array(‘or’ => array(‘User.active’=>1, ‘User.group_id’=>1)))); ?> Ví dụ: Tìm user không phải là admin <?php $this->user->find(‘all’, array(‘conditions’ => array(‘not’=>array(‘User.username’ => ‘admin’)))); ?>
  • 32. 2. MVC TRONG CAKEPHP 29 2.3 Controller Controller điều khiển luồng xử lý của ứng dụng. Trong Controller thường chứa những lệnh gọi tới Model để truy cập dữ liệu. Controller được xem là tầng điều khiển của ứng dụng. Controller chỉ nên khai báo các action(gọi là phương thức xử lý, được đặt trùng tên với tên file View). Cách khai báo Controller: class DemosController extends AppController{ var $name = ‘Demos’; function add() { …………………………. } }
  • 33. 2. MVC TRONG CAKEPHP 30 2.3 Controller  Session Component  Khai báo Session var $components = array(‘Session’);  Các sử dụng:  write ($name, $value): lưu session có giá trị $value vào $name  read($name): đọc session thông qua $name  check($name): kiểm tra session có tồn tại hay không  delete($key): xóa session thông qua tên  destroy(): xóa toàn bộ session  error(): xác định lỗi cuối cùng liên qua đến session
  • 34. 2. MVC TRONG CAKEPHP 31 2.3 Controller  Ví dụ:  write: <?php $this->Session->write(‘username’,’user1’); ?>  read: <?php $this->Session->read(‘username’); ?>  check: <?php $this->Session->check(‘username’); ?>  delete: <?php $this->Session->delete(‘username’); ?>  destroy: <?php $this->Session->destroy(); ?>