Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 66 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
66
Dung lượng
3,99 MB
Nội dung
BM/QT10/P.ĐTSV/04/04 Ban hành lần: UBND TỈNH BÀ RỊA – VŨNG TÀU TRƯỜNG CAO ĐẲNG KỸ THUẬT CÔNG NGHỆ GIÁO TRÌNH MƠ ĐUN LẬP TRÌNH WEB VỚI LARAVEL FRAMEWORK NGHỀ: CƠNG NGHỆ THƠNG TIN TRÌNH ĐỘ CAO ĐẲNG (Ban hành kèm theo Quyết định số: ……/QĐ-CĐKTCN, ngày … tháng … năm 20…… Hiệu trưởng Trường Cao đẳng Kỹ thuật Công nghệ BR-VT) BÀ RỊA – VŨNG TÀU TUYÊN BỐ BẢN QUYỀN Nhằm đáp ứng nhu cầu học tập nghiên cứu cho giảng viên sinh viên nghề Công nghệ Thông tin trường Cao đẳng Kỹ thuật Công nghệ Bà Rịa – Vũng Tàu, thực biên soạn tài liệu Lập trình web với Laravel framework Tài liệu biên soạn thuộc loại giáo trình phục vụ giảng dạy học tập, lưu hành nội Nhà trường nên nguồn thông tin phép dùng ngun trích dùng cho mục đích đào tạo tham khảo Mọi mục đích khác mang tính lệch lạc sử dụng với mục đích kinh doanh thiếu lành mạnh bị nghiêm cấm LỜI GIỚI THIỆU Giáo trình “Lập trình web với Laravel framework” biên soạn dựa khung chương trình đào tạo Cao đẳng nghề Cơng nghệ Thông tin Trường Cao đẳng Kỹ thuật Công nghê Bà Rịa – Vũng Tàu phê duyệt Tác giả nghiên cứu số tài liệu, công nghệ đại kết hợp với kinh nghiệm làm việc thực tế để viết nên giáo trình Nội dung tác giả trình bày động, dễ hiểu kèm theo bước hướng dẫn thực hành chi tiết theo nguyên tắc quan tâm đến kết đầu ra, khả tự học kỹ cần thiết để HSSV hoàn thành ứng dụng web quảng cáo sản phẩm, thương mại điện tử, … Laravel framework, framework thông dụng nay, đáp ứng nhu cầu thực tế doanh nghiệp Nội dung giáo trình chia thành 13 bài, đó: Bài 1: Tổng quan Bài 2: Tạo Laravel site Bài 3: Routing Bài 4: Middleware Bài 5: Controller Bài 6: Resource controller Bài 7: Truy xuất sở liệu Bài 8: Phân trang Bài 9: Xây dựng blade template Bài 10: Chứng thực Bài 11: Session Bài 12: Quản lý người dùng Bài 13: Gửi email upload tập tin Trong trình biên soạn, chắn giáo trình cịn nhiều thiếu sót Tác giả mong nhận ý kiến đóng góp quý thầy/cô em học sinh, sinh viên để tiếp tục hoàn thiện Xin chân thành cảm ơn quý đồng nghiệp, bạn bè có ý kiến đóng góp q trình biên soạn giáo trình Bà Rịa – Vũng Tàu, ngày …… tháng …… năm ……… Tham gia biên soạn Phan Hữu Phước – Chủ biên MỤC LỤC LỜI GIỚI THIỆU MỤC LỤC BÀI 1: TỔNG QUAN VỀ LARAVEL Mơ hình MVC .9 Cài đặt Composer 10 CÂU HỎI, BÀI TẬP 15 GỢI Ý, ĐÁP ÁN .15 BÀI 2: TẠO LARAVEL SITE 16 Một số lệnh tạo chạy Laravel site 16 1.1 Xem lệnh composer: composer 16 1.2 Tạo Laravel site 16 1.3 Chạy Laravel site 17 Cấu trúc thư mục Laravel site 18 Cấu hình tập tin config/database.php kết nối đến CSDL MySQL 18 CÂU HỎI, BÀI TẬP 18 BÀI 3: ROUTING .19 Cú pháp .19 Route chuyển tiếp 20 Route có tham số 20 Đặt tên cho route 21 BÀI 4: MIDDLEWARE 22 Khái niệm 22 Định nghĩa Middleware .22 2.1 Tạo Middleware 22 2.2 Middleware trước sau 24 Đăng ký Middleware 25 3.1 Đăng ký toàn cục (Global Middleware) .25 3.2 Đăng ký đến route 25 3.3 Gom nhóm Middleware 26 3.4 Sắp xếp thứ tự Middleware 27 Middleware có tham số .27 Hàm terminate .28 BÀI 5: CONTROLLER .30 Khái niệm 30 Tạo controller 30 Định nghĩa hàm (hành động) controller 31 Tạo view cho hàm controller 32 Truyền liệu route, controller, view 32 Single Action Controllers (Controller có hàm) 34 Controller Middleware 36 BÀI 6: RESOURCE CONTROLLER .37 Khái niệm 37 Tạo Resource controller 38 Xử lý hàm index hiển thị danh sách chủ đề 40 Xử lý hàm create store để thêm liệu 40 Xử lý hàm edit update để sửa liệu .41 Xử lý hàm destroy để xóa liệu .43 CÂU HỎI, BÀI TẬP 43 BÀI 7: TRUY XUẤT CSDL .44 Cấu hình đăng nhập CSDL 44 Thực câu lệnh SQL đơn giản .45 Query Builder 45 3.1 Giới thiệu 45 3.2 Các hàm đọc kết qủa 45 3.3 Biểu thức Raw 47 3.4 Lệnh join .47 3.5 Lệnh union 47 3.6 Mệnh đề where 47 3.7 Sắp xếp, gom nhóm, giới hạn nhảy dịng 47 3.8 Mệnh đề điều kiện (when) 48 3.9 Lệnh insert, update, delete 48 BÀI 8: PHÂN TRANG .49 Cập nhật hàm trả view hiển thị danh sách 49 Cập nhật view hiển thị danh sách 49 2.1 Hiển thị phân trang .49 2.2 Hiển thị số trang liên kết 50 CÂU HỎI, BÀI TẬP 50 BÀI 9: XÂY DỰNG BLADE TEMPLATE 52 Giới thiệu Blade template 52 Tạo sử dụng blade template 52 BÀI 10: CHỨNG THỰC 56 Tạo chức chức thực cho site .56 Khảo sát trang chức chứng thực 57 Tạo table quản lý người dùng 58 Đăng ký tài khoản .59 Tùy biến trang mặc định 59 Truy cập yêu cầu chứng thực 60 BÀI 11: SESSION .62 BÀI 12: QUẢN LÝ NGƯỜI DÙNG 63 BÀI 13: GỬI EMAIL VÀ UPLOAD TẬP TIN 64 TÀI LIỆU THAM KHẢO 65 GIÁO TRÌNH MƠ ĐUN Tên mơ đun: Lập trình web với Laravel framework Mã mơ đun: MĐ30 Vị trí, tính chất, ý nghĩa vai trị mơ đun: Vị trí: giảng dạy sau học xong mơn sở Lập trình web PHP & MySQL Tính chất: mơ đun tự chọn Ý nghĩa vai trị mơ đun: cung cấp cho người học kiến thức kỹ để thiết kế, xây dựng phát triển ứng dụng web PHP theo mơ hình MVC Laravel framework Mục tiêu mô đun: Về kiến thức: + + + + + + + + + + + + Trình bày mơ hình MVC Biết bước cài đặt Composer Biết số lệnh tạo chạy Laravel site Trình bày quy trình xử lý yêu cầu Laravel site Biết cơng dụng route Biết khái niệm middleware Trình bày loại middleware Trình bày khái niệm vai trị controller Trình bày resource controller Biết cơng dụng hàm resource controller Biết đường dẫn tập tin cấu hình Biết thuộc tính cấu hình cho truy xuất CSDL, gửi email, upload tập + + + + + + + + + tin Biết công dụng phân trang Trình bày quy trình tạo phân trang cho trang hiển thị danh sách Biết công dụng template Trình bày cơng dụng thành phần blade template Biết công dụng chứng thực Biết lệnh để tạo chức chức thực cho site Trình bày khái niệm công dụng Session Biết quy trình đọc, cập nhật thơng tin người dùng Trình bày quy trình tạo trang gửi email upload tập tin Về kỹ năng: + Cài đặt Composer + + + + + + Tạo mới, cấu hình chạy Laravel site Định nghĩa route web.php Tạo route trả view Tạo route trả hành động controller Tạo đăng ký middleware Lưu ý sử dụng middleware trang phù hợp tránh gây khó + + + + + chịu cho người truy cập Tạo controller định nghĩa hàm hành động controller Truyền liệu từ route đến controller hiển thị view Tạo resource controller Viết lệnh xử lý cho hàm hành động resource controller Tạo trang truy xuất CSDL lệnh SQL đơn giản Query + + + + + + Builder Tạo chức phân trang cho trang hiển thị danh sách Tạo template cho view Tạo view sử dụng blade template Tạo chức chức thực cho site Phân quyền cho trang Sử dụng Session lưu trữ thông tin khách truy cập tạo chức giỏ hàng + Tạo trang quản lý thông tin người dùng + Tạo trang liên hệ gửi email đến quản trị + Tạo trang upload tập tin Về lực tự chủ trách nhiệm: + + + + + Cẩn thận tạo site đường dẫn, khơng làm ảnh hưởng đến hệ thống Chính xác ký tự IN, thường Phân tích cẩn thận giao diện mẫu trước xây dựng blade template Cẩn thận tránh hiển thị thơng tin người dùng ngồi ý muốn Xử lý cẩn thận ngăn chặn kẻ xấu sử dụng chức gửi emal upload tập tin để công phá hoại site + Có thể vận dụng để xây dựng website thương mại, quảng bá chuyên nghiệp framework, CMS mã nguồn mở theo mơ hình MVC Nội dung mô đun: BÀI 1: TỔNG QUAN VỀ LARAVEL Mã bài: 30.1 Giới thiệu: Để tạo chạy thử ứng dụng web dùng Laravel framework, yêu cầu máy tính phải cài đặt cấu hình biến đường dẫn hệ thống Mục tiêu: Trình bày mơ hình MVC Biết bước cài đặt Composer Cài đặt Composer Kiểm tra phiên XAMPP phù hợp cài đặt trước máy tính Nội dung chính: Mơ hình MVC Model View Controller mơ hình kiến trúc theo hướng đối tượng, cho phép người phát triển tách ứng dụng thành thành phần chính: Model: thành phần đại diện cho liệu ứng dụng, bao gồm chức kiểm tra tính hợp lệ liệu View: thành phần đảm trách việc hiển thị liệu thành phần giao diện người dùng Controller: thành phần có trách nhiệm tiếp nhận xử lý yêu cầu gửi đến cho ứng dụng, làm nhiệm vụ điều phối công việc View Model Việc phát triển ứng dụng, nâng cấp, bảo trì thử nghiệm trở nên đơn giản dễ dàng Hình 1.1 Các thành phần mơ hình MVC 51 BÀI 9: XÂY DỰNG BLADE TEMPLATE Mã bài: 30.9 Giới thiệu: Để tạo chạy thử ứng dụng web dùng Laravel framework, yêu cầu máy tính phải cài đặt cấu hình biến đường dẫn hệ thống Mục tiêu: Biết số lệnh tạo chạy Laravel site Tạo Laravel site Cấu hình chạy Laravel site Cẩn thận tạo site đường dẫn, không làm ảnh hưởng đến hệ thống Nội dung chính: Giới thiệu Blade template Blade công cụ tạo bố cục đơn giản mạnh mẽ cung cấp với Laravel Không giống công cụ template PHP phổ biến khác, Blade không hạn chế việc sử dụng mã PHP túy blade view Trong thực tế, tất blade view biên dịch thành mã PHP đơn giản lưu vào nhớ cache chúng sửa đổi Các tập tin blade view có phần mở rộng blade.php thường lưu thư mục resources/views Tạo sử dụng blade template Tạo tập tin resources/views/layouts/mylayout.blade.php làm blade template 52 Chú ý khối điều khiển hiển thị nội dung section (khung đứt nét) khối yield (khung liền nét) Sửa nội dung tập tin resources/views/HinhChuNhat/chuvi.blade.php 53 Khai báo sử dụng blade template Sửa nội dung thẻ head resources/views/layouts/mylayout.blade.php Cập nhật lại tập tin resources/views/HinhChuNhat/chuvi.blade.php 54 Tương tự, nội dung tập tin resources/views/HinhChuNhat/dientich.blade.php 55 BÀI 10: CHỨNG THỰC Mã bài: 30.10 Giới thiệu: Để tạo chạy thử ứng dụng web dùng Laravel framework, yêu cầu máy tính phải cài đặt cấu hình biến đường dẫn hệ thống Mục tiêu: Biết số lệnh tạo chạy Laravel site Tạo Laravel site Cấu hình chạy Laravel site Cẩn thận tạo site đường dẫn, không làm ảnh hưởng đến hệ thống Nội dung chính: Tạo chức chức thực cho site Laravel cung cấp cho cách đơn giản để tạo chức chứng thực với đầy đủ yêu cầu cần thiết bao gồm route view Bước 1: Mở cửa sổ Command Prompt Bước 2: Vào thư mục chứa site Bước 3: Thực lệnh composer require laravel/ui Bước 4: Thực lệnh php artisan ui vue auth Bước 5: Thực lệnh npm install && npm run dev Sau thực lệnh trên, có có tập tin view cần thiết cho chức chức thực, tập tin đặt thư mục resources/views/auth Laravel tạo layout resources/views/layouts/app.blade.php cho ứng dụng 56 Ngoài ra, quan sát tập tin routes/web.php, thấy Laravel chèn thêm dòng lệnh định nghĩa route: 25 Khảo sát trang chức chứng thực Trang đăng nhập (http://domain/login) Trang reset mật (http://domain/password/reset) Trang đăng ký tài khoản (http://domain/register) 57 26 Tạo table quản lý người dùng Dùng lệnh migrate artisan để tạo table quản lý tài khoản Truy cập vào phpmyadmin để xem kết Laravel tạo cho table users để quản lý thông tin người dùng, cấu trúc theo hình bên 58 27 Đăng ký tài khoản Sau nhập thông tin click chuột lên Register, có kết sau: Table users chèn thêm dòng liệu 28 Tùy biến trang mặc định Sau chứng thực thành công, người dùng chuyển hướng đến địa /home Chúng ta cấu hình lại địa cách thay đổi thuộc tính 59 redirectTo bên LoginController, RegisterController, ResetPasswordController, VerificationController Ví dụ 1: Sau login thành cơng chuyển hướng đến địa /chude/create Bước 1: Mở tập tin /app/Http/Controllers/Auth/LoginController.php Bước 2: Thay đổi giá trị thuộc tính redirectTo Thực đăng nhập xem kết Ví dụ 2: Sau người dùng register thành cơng chuyển hướng đến địa http://domain/chude Bước 1: Mở tập tin /app/Http/Controllers/Auth/RegisterController.php Bước 2: Thay đổi giá trị thuộc tính redirectTo Thực logout đăng ký tài khoản xem kết 29 Truy cập yêu cầu chứng thực Khi yêu cầu người dùng phải login thành công trước truy cập địa dùng lệnh ->middleware('auth') kèm với route tương ứng Ví dụ: Người dùng phải login trước truy cập vào trang http://domain/about Bước 1: Mở tập tin /routes/wep.php Bước 2: Cập nhật lại định nghĩa route Truy cập vào địa http://domain/about để xem kết Dĩ nhiên, yêu cầu chứng thực cho controller cách gọi hàm middleware('auth') bên phương thức khởi tạo controller Ví dụ: Người dùng phải login trước truy cập vào địa chuyển hướng vào ChuDeController Bước 1: Mở tập tin /app/Http/Controller/ChuDeController.php Bước 2: Tạo hàm construct 60 Truy cập vào địa http://domain/chude http://domain/create để xem kết Trong trường hợp yêu cầu chứng thực cho số hàm bên controller dùng thêm hàm only sau hàm middleware Truy cập vào địa http://domain/chude phép truy cập Truy cập vào http://domain/chude/create http://domain/chude/1/edit bị chuyển hướng đến trang login 61 BÀI 11: SESSION Mã bài: 30.11 62 BÀI 12: QUẢN LÝ NGƯỜI DÙNG Mã bài: 30.12 63 BÀI 13: GỬI EMAIL VÀ UPLOAD TẬP TIN Mã bài: 30.13 64 TÀI LIỆU THAM KHẢO [1] https://laravel.com/docs 65 ... sinh viên nghề Công nghệ Thông tin trường Cao đẳng Kỹ thuật Công nghệ Bà Rịa – Vũng Tàu, thực biên soạn tài liệu Lập trình web với Laravel framework Tài liệu biên soạn thuộc loại giáo trình phục... LỜI GIỚI THIỆU Giáo trình ? ?Lập trình web với Laravel framework? ?? biên soạn dựa khung chương trình đào tạo Cao đẳng nghề Cơng nghệ Thông tin Trường Cao đẳng Kỹ thuật Công nghê Bà Rịa – Vũng Tàu... VÀ UPLOAD TẬP TIN 64 TÀI LIỆU THAM KHẢO 65 GIÁO TRÌNH MƠ ĐUN Tên mơ đun: Lập trình web với Laravel framework Mã mơ đun: MĐ30 Vị trí, tính chất, ý nghĩa vai trị mơ đun: Vị trí: