SlideShare a Scribd company logo
ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO THỰC TẬP CÔNG NHÂN WEB
Đề tài : Xây Dựng Hệ Thống EduPortal Trên
Framework CakePHP
GVHD : Th.s Trịnh Công Duy
SVTH : Lã Xuân Tâm
Đào Phan Hoàng Tuấn
Trần Canh Ngọ
Trương Công Khôi
Lớp : 11TLT
Đà nẵng ,06/2012
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1.1 Tìm hiểu ngôn ngữ lập trình PHP & MySQL :
1.1.1 Ngôn Ngữ Lập Trình PHP,HTML,CSS,JavaScript:
• HTMT,CSS,JavaScript:
HTML (HyperText Markup Language, hay là "Ngôn ngữ Đánh dấu Siêu
văn bản") là một ngôn ngữ đánh dấu được thiết kế ra để tạo nên các trang web với
các mẩu thông tin được trình bày trên World Wide Web. Ngôn ngữ HTML có ưu
điểm là rất đơn giản và có thể chạy tốt với nhiều hệ điều hành và nhiều trình duyệt
web khác nhau.
CSS (Cascading Style Sheets) được dùng để miêu tả cách trình bày các tài
liệu viết bằng ngôn ngữ HTML và XHTML,XML,UML…
Việc dùng Hạn chế tối thiểu việc làm rối mã HTML của trang Web bằng
các thẻ quy định kiểu dáng (chữ đậm, chữ in nghiêng, chữ có gạch chân, chữ
màu), khiến mã nguồn của trang Web được gọn gàng hơn, tách nội dung của trang
Web và định dạng hiển thị, dễ dàng cho việc cập nhật nội dung.
Tạo ra các kiểu dáng có thể áp dụng cho nhiều trang Web, giúp tránh phải
lặp lại việc định dạng cho các trang Web giống nhau…
JavaScript là một ngôn ngữ lập trình dựa trên nguyên mẫu với cú pháp
phát triển từ C. Ngôn ngữ này được dùng rộng rãi cho các trang web.
JavaScript được dùng để thực hiện một số tác vụ không thể thực hiện được
với chỉ HTML như kiểm tra thông tin nhập vào, tự động thay đổi hình ảnh,...
• Ngôn Ngữ PHP:
PHP (Personal Home Page) ra đời năm 1994 do phát minh của Rasmus
Lerdorf và nó được tiếp tục phát triển bởi nhiều cá nhân và tập thể khác,do đó
PHP được xem như 1 sản phẩm mã nguồn mở.
PHP (viết tắt hồi quy "Hypertext Preprocessor") là một ngôn ngữ lập trình
kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết
cho máy chủ(Server script), mã nguồn mở, dùng cho mục đích tổng quát.
PHP là kịch bản cho phép chúng ta xây dựng dựng dụng web trên mạng
internet,và dễ dàng nhúng vào các trang HTML.PHP hỗ trợ nhiều dạng cơ sở dữ
liệu như : MySQL, Informix, Oracle, Sybase, Solid, PostgreSQL, Generic ODBC,
vv.
1.1.2 Hệ quản trị cơ sơ dữ liệu MYSQL :
MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới và
được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. Vì
MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển,
hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất
mạnh.Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có
truy cập CSDL trên internet. MySQL miễn phí hoàn toàn cho nên bạn có thể tải về
MySQL từ trang chủ. Nó có nhiều phiên bản cho các hệ điều hành khác nhau:
phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix,
FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS, ...
1.1.3 Cài đặt môi trường làm việc PHP,Apache,MySQL:
Để cài đặt PHP, các bạn có thể cài đặt từng gói riêng lẻ (PHP, Apache,
Mysql). Tuy nhiên, tôi vẫn khuyến khích các bạn cài đặt dạng gói tích hợp. Sẽ tiện
lợi cho việc sau này hơn rất nhiều.Để cài đặt môi trường thực thi PHP & MySQL
trên windows thì có nhiều gói cho các bạn lựa chọn như
XAMPP,WampServer,Vertrigo…đã bao gồm Web Server Apache,bộ xử lý PHP
và MySQL.
Hình 1: Php,Apache,MySQL
1.4 CakePHP Framework và mô hình 3 lớp MVC :
1.2.1 CakePHP FrameWork:
CakePHP là một framework cho php, mục đích của nó là cung cấp một
framework cho người sử dụng php phát triển những ứng dụng web nhanh, mạnh
mà không mất tính linh hoạt của nó. Và điều quan trọng là CakePHP là mã nguồn
mở miễn phí. Để sử dụng nó, yêu cầu người làm phải biết những kiến thức như:
Cơ bản về PHP và HTML, Kiến trúc MVC,Lập trình hướng đối tượng.
Hình 2 : cakephp
1.2.2 Một số tính năng của cakephp:
• Nguồn mở, miễn phí, có cộng đồng sử dụng và hỗ trợ rộng lớn
• Tương thích PHP4 và PHP5
• Mô hình MVC
• Đa ngôn ngữ
• Sinh code tự động
• Caching
• Phân quyền (ACL)
• Kiểm tra ràng buộc dữ liệu
• Xây dựng nhiều thư viện hỗ trợ cho View như: Ajax, HTML Form,
Javascript…
• Xây dựng nhiều thư viện hỗ trợ cho Controller: Email, Security, Session,
Cookies, Request Handling
• Dễ dàng viết thêm thư viện hỗ trợ, liên kết với ứng dụng khác (thông qua
vendors)
• Đa giao diện
• Hỗ trợ nhiều hệ quản trị CSDL
1.2.3 Cấu trúc thư mục cakephp:
Hình 3: Cấu trúc thư mục cakephp
Sau khi bạn download và giải nén CakePHP, bạn cần lưu ý đến 3 thư mục chính
sau:
• Thư mục app là nơi mà bạn làm việc: Nơi đây lưu các file của ứng dụng do
bạn viết.
• Thư mục cake là nơi bạn thay đổi các file core của CakePHP. Bạn phải thật
cẩn thận khi thay đổi các file trong này, và chúng tôi không thể giúp gì cho
bạn nếu bạn thay đổi các file core.
• Thư mục plugins: chứa các thành phần mở rộng dùng cho ứng dụng
• Thư mục vendors là nơi bạn cài các thư viện PHP của nhà cung cấp thứ 3
mà bạn cần để sử dụng với ứng dụng CakePHP của bạn.
 Cấu trúc thư mục App:
Thư mục app của CakePHP là nơi bạn chính bạn phát triển ứng dụng. Bây
giờ chúng ta sẽ xem qua các thư mục phía trong của thư mục app.
Hình 4: Cấu trúc thư mục App
 Config: Nơi lưu giữ một số file cấu hình hệ thống của CakePHP.
 Controller: chứa các controller và các component của ứng dụng
 Libs : thư viện cakephp
 Locale: lưu các file ngôn ngữ ,phục vụ cho ứng dụng đa ngôn ngữ
 Model : chứa các file model và các behavior,datasource..
 Plugin : chứa các gói mở rộng
 Tmp : thư mục tạm của ứng dụng
 Vendor : chứa ứng dụng của bên thứ 3
 View : chứa các file giao diện
 Webroot: chứa tài liệu(hình ảnh,file..),file css và javascript..
1.2.4 Mô hình 3 lớp MVC:
Cũng như các PHP framework khác, CakePHP hoạt động theo mô hình
thiết kế phần mềm chuẩn MVC. Mô hình MVC trong CakePHP chia ứng dụng ra
ba phần chính: Model, View và Controller, việc phân tách ứng dụng rõ ràng như
vậy sẽ giúp bạn tách bạch các phần xử lý riêng biệt cho website của bạn, nó giúp
cho code của bạn trong sáng hơn, dễ lập trình, dễ quản lý, chỉnh sửa, nâng cấp.
Trong đó:
 Model: mô tả dữ liệu của ứng dụng. Trên Model ta có thể thiết lập các ràng
buộc dữ liệu, quan hệ giữa các bảng. Model giao tiếp với database, bạn sẽ
viết các query cũng như các xử lý logic ở đây.
 View: đảm nhận việc hiển thị thông tin đã được xử lý gới đến từ Controller,
View còn được hiểu nôm na là nơi chứa các file html của bạn để hiển thị
cho nguời xem.
 Controller: xử lý và điều hướng các yêu cầu của client, Controller nơi bạn
trực tiếp viết các xử lý lấy các request từ url và form để thao tác trực tiếp
với Model, sau đó dùng View để hiển thị ra.
Hình 5: Mô hình 3 lớp MVC
Hình 6 Mô hình MVC
 Đầu tiên client sử dụng web browser để gởi yêu cầu đến ứng dụng bằng
cách gõ hoặc click vào một đường link liên kết.
 Bộ phận điều vận Dispatcher (là một thành phần của CakePHP) sẽ kiểm tra
phần tử để xác định controller nào sẽ thực thi và gởi yêu cầu tới controller
tương ứng
 Khi yêu cầu được gởi đến Controller, nó sẽ làm một vài thao tác luận lí cần
thiết, có thể nó sẽ xử lý ngay tại Controller hoặc sử dụng Model tương ứng
để truy xuất dữ liệu. Dữ liệu ở đây có thể là các record trong table của một
database, hoặc một dạng khác.
 Sau khi lấy được dữ liệu, Controller sẽ đưa dữ liệu này ra View và View
này có nhiệm vụ chuẩn bị đưa dữ liệu đầu ra. View có thể chuẩn bị dữ liệu
ở dạng HTML, PDF, tài liệu XML hoặc một đối tượng JSON, cuối cùng là
view sẽ được hiển thị trên trình duyệt.
CHƯƠNG 2 : XÂY DỰNG CỔNG THÔNG TIN TRƯỜNG HỌC
EDUPORTAL DỰA TRÊN CAKEPHP FRAMEWORK
2.1 Portal là gì:
Portal (cổng giao dịch điện tử) là một bước tiến hóa của website truyền
thống. Nó ra đời để giải quyết những vấn đề mà website truyền thống gặp phải.
Là "siêu web site“, gọi tắt là Portal, đối với người dùng vẫn chỉ là sử dụng trang
web thông qua trình duyệt (tức là web browser), nhưng đằng sau đó là sự thay đổi
thuật ngữ và quan niệm mới về triết lý phục vụ thay cho cách hiểu “tuyên truyền”
thông qua web site như trước đây.
Là điểm đích qui tụ hầu hết các thông tin và dịch vụ cho người sử dụng cần,
là điểm đích đến thực sự. Thông tin và dịch vụ được phân loại nhằm thuận tiện
cho tìm kiếm và hạn chế vùi lấp các thông tin.
Bảo toàn đầu tư lâu dài. Có nền tảng công nghệ đảm bảo, do công nghệ
Internet đã phát triển rất cao so với thời kỳ xuất hiện World Wide Web vào đầu
những năm 90 của thế kỷ trước. Những công nghệ tạo nên thời đại Portal đều hỗ
trợ tính mở và kế thừa rất mạnh, sao cho việc mở rộng các qui mô phục vụ bằng
các phần mềm ứng dụng mới được “lắp ráp” vào Portal đang có, mà không phải
hủy bỏ hoặc sửa chữa lớn như những web site trước đây.
Môi trường chủ động dùng cho việc tích hợp ứng dụng
Phía ngoài, cung cấp một cổng giao dịch thân thiện, đủ các chức năng cho
người dùng, trong đó có chức năng cá nhân hóa.
Phía trong, là cung cấp một hạ tầng điện tử, nhằm tạo quyền chủ động trong
việc cung cấp, tích hợp thông tin và liên kết với các hệ thống, các dịch vụ thông
tin khác.
Cung cấp môi trường cộng tác (collaborative) thông qua việc quản lý và
khai thác thống nhất toàn diện các dịch vụ cơ bản như: Forum, Mail, Calendar,
Task Management, Report Systems, Conferences, Discussion Groups, News
Groups, v.v... Các dịch vụ này là một phần của kho tài nguyên dịch vụ trên portal
để người dùng lựa chọn. Việc quản lý người dùng được thực hiện một lần và thống
nhất trên tất cả các ứng dụng dịch vụ của portal.
Tóm lại, triết lý của portal là “siêu web site” để phục vụ tốt hơn thông qua
quan hệ bình đẳng và tình cảm gắn bó với “siêu web site”, là định hướng phục vụ
(user-centric), khác với sự phát triển tự nhiên của web site truyền thống là định
hướng trình bày thông tin (data-centric).
2.2 Khái quát chung về xây dựng hệ thống eduportal dựa trên
cakephp
- Xây dựng các chức năng cơ bản của website với giao diện thân thiện,dễ
tương tác đối với người dùng.
- Bao gồm các chức năng ,hệ thống menu giúp người dùng thao tác sử
dụng nhanh.
- Nội dung được phân loại,phân cấp theo từng chuyên mục rõ ràng,giúp
cho việc thêm,sửa,xóa dữ liệu trở nên đơn giản hơn.
- Việc tùy biến nội dung cũng là một yêu cầu hàng đầu. Ban quản trị có
thể dễ dàng sắp xếp nội dung theo nhiều tiêu trí (tin đọc nhiều nhất, tin
mới nhất, tin được phản hồi nhiều nhất, tin chuyên đề….) và quản lý
việc hiển thị theo vị trí, theo từng nhóm, trên từng trang …
- Việc quản trị được phân quyền rõ ràng,giúp người quản trị dễ dàng theo
dõi tin tức cũng như các hoạt động của website.
- Việc đăng ký thành viên rất dễ dàng nhanh gọn
- Hệ thống tìm kiếm giúp người dùng có thể tìm kiếm nhanh nội dung
mình mong muốn một cách chính xác nhất..
- Tương thích với tất cả các trình duyệt web,hỗ trợ nhiều thiết bị hiển thị
2.3 Thiết kế cơ sở dữ liệu
MẤY PHẦN Ở TRÊN OK HẾT RỒI ĐÓ.CÒN BẮT ĐẦU TỪ ĐÂY XUỐNG
DƯỚI CÒN VÀI CÁI NỮA LÀ XONG ĐÓ.MI COI THỬ HỈ.CHỨ 2
THẰNG LÌN KIA ÉO BIT LÀM CÁI MẸ GÌ HẾT.CHÁN VL RA.
---------------------------------------------------------------------------------------------------
(chụp mấy cái bảng csdl,rồi tên dữ liệu thuộc tính của nó chèn vô đây nhá)
Giống cái báo cáo của bọn ni nè,vd mẫu thui nhá.lấy của mình thay vào
2.4 Các chức năng giao diện tương tác trong hệ thống eduportal:
CHỖ NÀY THÌM CHỤP HÌNH CÁC CHỨC NĂNG CỦA SITE MÌNH NHƯ:
TRANG CHỦ,CÁC TRANG MENU KHI DẪN LINK TỚI,TRANG ĐĂNG
KÝ,TRANG QUẢN TRỊ,CÁC MỤC LIÊN KẾT…. NÓI SƠ QUA VỀ MẤY
CHỨC NĂNG NHƯ NÀO NHA.
ÉO MỊA THAY MẤY CÁI TIN ĐIỆN THOẠI HẾT BẰNG TIN GIÁO DỤC VÔ
ĐI.ĐỂ ĐÓ ÔNG THẦY CHO DIE GIỜ.
SAO THÍM CHƯA CODE MẤY ĐƯỜNG DẪN CHỖ MENU AH.TOÀN DẪN
LINK ĐI ĐÂU THẾ,CODE MẤY TRANG LK ĐÓ ,ĐƯA DỮ LIỆU SƠ SƠ VÔ
THÔI,KO CẦN NHIỀU ĐÂU,NÓI CHUNG CÓ DẪN ĐẾN ĐƯỢC OY.THÍCH
ĐỘNG HAY TĨNH GÌ CŨNG DC,
MỤC LIÊN HỆ LÀM 1 TRANG ĐƯA INFO NHƯ BỌN NÀY NÈ 
TRÊN CÙNG BÊN TRÁI ĐÓ.MÀ CỦA MÌNH CHƠI HẲN 1 TRANG
LUÔN.GHI TÊN THÀNH VIÊN NHÓM,TÊN ĐỀ TÀI KIỀU KIỂU NHƯ BỌN
NÓ VẬY.GỌI LÀ CHO CÓ.HEHE
Xem cái hình trên nhá.
Đưa cái khung thông báo bên dưới lên trên bảng site liên kết nhá
Chõ liên kết đưa mấy cái logo dhdn,bộ giáo dục vô chỗ đó.cho cái khung đó dài
xuống.quất nhìu logo vô cho nó khỏi trống trải.ok :D
Rầu tạm thời nhiu đó.nếu có ý tưởng gì thì thêm vô nữa nha.chăm chút giao diện tí
đi,.ông thầy ông hay để ý giao điện dó.
Rùi còn phần kết luận nữa.nêu những cái đạt dc rùi hạn chế gì đó,thêm bữa vô nha,
4h sáng ùi bùn ngủ quá.ngủ đã có gì trưa ăn cơm xong qua chỗ ta luôn ngồi hoàn
thiện nốt rồi chở ta đi báo cáo với. 

More Related Content

PDF
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
PDF
Quản lý phòng ban
PDF
Giáo trình phân tích thiết kế hệ thống thông tin
DOC
Đề tài: Quản lý hệ thống bán vé máy bay của Vietnam Airline, 9đ
PDF
Bài 6: Bảo mật trong SQL SERVER 2008 - Giáo trình FPT
PDF
Thiết kế csdl quản lý nhân sự
PDF
Thiết kế csdl quản lý nhân sự
PDF
Luận văn: Xây dựng website quản lý nhà hàng, HOT
Báo cáo đồ án tôt nghiệp: Xây dựng Website bán hàng thông minh
Quản lý phòng ban
Giáo trình phân tích thiết kế hệ thống thông tin
Đề tài: Quản lý hệ thống bán vé máy bay của Vietnam Airline, 9đ
Bài 6: Bảo mật trong SQL SERVER 2008 - Giáo trình FPT
Thiết kế csdl quản lý nhân sự
Thiết kế csdl quản lý nhân sự
Luận văn: Xây dựng website quản lý nhà hàng, HOT

What's hot (20)

PDF
Đề tài: Thiết kế hệ thống thông tin quản lý phân phối Gas, HOT
PDF
Đề tài: Quản lí Tour du lịch, HAY, 9đ
DOCX
Đề tài: Website giới thiệu sản phẩm cho shop thời trang Daisy
PDF
Devwork.vn Tài liệu lập trình PHP Laravel
DOC
Xây dựng biểu đồ use case
PDF
Giáo Trình PHP & MySql căn bản
DOCX
Đồ Án Tốt Nghiệp Ngành Công Nghệ Thông Tin, 9 Điểm.docx
PDF
Đề tài: Kiểm thử phần mềm trên thiết bị di động, HAY, 9đ
DOCX
Xây dựng cơ sở dữ liệu trong quản lý nhân sự
PPTX
Spring framework
PDF
Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên
DOCX
Giới thiệu về Rational Rose và Các diagram
DOCX
Phuong phap nghien cuu khoa hoc
PDF
BA DAY: 5 bước phân tích yêu cầu nghiệp vụ
PDF
đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...
PDF
đồ áN cơ sở 2 đề tài xây dựng website kinh doanh phụ kiện thú cưng
PDF
Phân tích thiết kế hệ thống của hàng bán điện thoại di động
PDF
Bài 5: Chuẩn hóa cơ sở dữ liệu
PDF
Phân tích thiết kế hệ thống thông tin PTIT
PPTX
MongoDB Introduction
Đề tài: Thiết kế hệ thống thông tin quản lý phân phối Gas, HOT
Đề tài: Quản lí Tour du lịch, HAY, 9đ
Đề tài: Website giới thiệu sản phẩm cho shop thời trang Daisy
Devwork.vn Tài liệu lập trình PHP Laravel
Xây dựng biểu đồ use case
Giáo Trình PHP & MySql căn bản
Đồ Án Tốt Nghiệp Ngành Công Nghệ Thông Tin, 9 Điểm.docx
Đề tài: Kiểm thử phần mềm trên thiết bị di động, HAY, 9đ
Xây dựng cơ sở dữ liệu trong quản lý nhân sự
Spring framework
Đề Tài Thiết Kế Phần Mềm Quản Lý Sinh Viên
Giới thiệu về Rational Rose và Các diagram
Phuong phap nghien cuu khoa hoc
BA DAY: 5 bước phân tích yêu cầu nghiệp vụ
đề Tài website bán hàng quần áo ở cửa hàng juri luận văn, đồ án, đề tài tốt n...
đồ áN cơ sở 2 đề tài xây dựng website kinh doanh phụ kiện thú cưng
Phân tích thiết kế hệ thống của hàng bán điện thoại di động
Bài 5: Chuẩn hóa cơ sở dữ liệu
Phân tích thiết kế hệ thống thông tin PTIT
MongoDB Introduction
Ad

Viewers also liked (14)

DOC
Don xin thanh lap doanh nghiep lien doanh
PDF
Ha active active bang gfs2
DOCX
Xây dựng ứng dụng hỗ trợ học tiếng anh trên thiết bị android
DOCX
Nếu bạn làm it bạn cần biết
DOC
Ve ngoi nha lap trinh do hoa bang c
PDF
Lập trình Androi
PDF
Mtcv giám đốc tt cntt
DOC
Quản lý cua hang giai khat lxt
PPT
Báo cáo Đồ án tốt nghiệp
PDF
Bao cao-lap-trinh-android-final
DOCX
Hướng dẫn cài đặt phần mềm turnoffmonitor
PDF
Bao cao-tot-nghiep-monitoring
PPTX
Final year project presentation in android application
PDF
Final Year Project Report on Self Tacit Zone (Location Based Android App)
Don xin thanh lap doanh nghiep lien doanh
Ha active active bang gfs2
Xây dựng ứng dụng hỗ trợ học tiếng anh trên thiết bị android
Nếu bạn làm it bạn cần biết
Ve ngoi nha lap trinh do hoa bang c
Lập trình Androi
Mtcv giám đốc tt cntt
Quản lý cua hang giai khat lxt
Báo cáo Đồ án tốt nghiệp
Bao cao-lap-trinh-android-final
Hướng dẫn cài đặt phần mềm turnoffmonitor
Bao cao-tot-nghiep-monitoring
Final year project presentation in android application
Final Year Project Report on Self Tacit Zone (Location Based Android App)
Ad

Similar to Bao cao web cake php (20)

DOCX
Kiến thức cần thiết làm việc
PDF
Hỏi tình hình bk tiny bktiny-hdsd
PDF
Slide 01-Web Application Overview (1).pdf
PDF
Web201 slide 1
PDF
DOCX
Bao cao wesite bán giày.docx
PPTX
E learning lab - Tim hieu Cake PHP
PDF
Nội dung khóa học Nukeviet
PDF
Bài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng web
PDF
Web301 slide 1
PDF
Web201 slide 7
PDF
Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT
DOCX
Bao cao thuc tap co so (autosaved)
PPTX
Tại sao nên chọn ngôn ngữ php
PPTX
BaoCaoPHP_project1_it1_daihocbachkhoahn.pptx
DOC
Luận Văn Đề Cương Công Nghệ Thông Tin Lập Trình Web.doc
PDF
Code igniter v1
PDF
PPTX
Chương 1: Tổng quan về PHP
PDF
Bao cao thuc tap tuan 5
Kiến thức cần thiết làm việc
Hỏi tình hình bk tiny bktiny-hdsd
Slide 01-Web Application Overview (1).pdf
Web201 slide 1
Bao cao wesite bán giày.docx
E learning lab - Tim hieu Cake PHP
Nội dung khóa học Nukeviet
Bài 1 Lập trình website theo mô hình MVC - Xây dựng ứng dụng web
Web301 slide 1
Web201 slide 7
Bài 7 Xây dựng website sử dụng PHP và MySQL - Giáo trình FPT
Bao cao thuc tap co so (autosaved)
Tại sao nên chọn ngôn ngữ php
BaoCaoPHP_project1_it1_daihocbachkhoahn.pptx
Luận Văn Đề Cương Công Nghệ Thông Tin Lập Trình Web.doc
Code igniter v1
Chương 1: Tổng quan về PHP
Bao cao thuc tap tuan 5

More from laonap166 (20)

PDF
Huong dan xu ly cac loi khi su dung phan mem reset may in
PDF
Huong dan reset muc l200 epson
PDF
NEC Server Documents
PDF
Nhạp mon lap trinh khong code
DOC
He 74 a-thltht-lãxuântâm-11tlt
DOC
Thu cam on khach hang
DOC
Cai dat su_dung_acronis_snapdeployforpc_debungfilebackuphangloat
DOCX
Xd email server zimbra
DOC
Tom tat ly thuyet thi bằng lái xe b2
DOCX
Policy Based Assignment DHCP – Windows Server 2012
DOCX
How to backup active directory domain services database in windows server 201...
DOCX
Dns backup and recovery in windows server 2012 r2
DOCX
Trend micro kết quả thử nghiêm đhyd
DOCX
Cài đặt ảo hóa hyper v trên máy ảo vmware workstation 10
DOCX
Lab direct access service
DOCX
Cài đặt và cấu hình symantec live update administrator
PDF
Cách không cho hàng xóm xài ké wifi mà ko mích lòng
PDF
Wsus config[ver1.0]
DOCX
HƯỚNG DẪN KIỂM TRA MÃ ĐỘC DOUBLEPULSAR CỦA NSA
PDF
Truyen cuoi song ngu anh viet
Huong dan xu ly cac loi khi su dung phan mem reset may in
Huong dan reset muc l200 epson
NEC Server Documents
Nhạp mon lap trinh khong code
He 74 a-thltht-lãxuântâm-11tlt
Thu cam on khach hang
Cai dat su_dung_acronis_snapdeployforpc_debungfilebackuphangloat
Xd email server zimbra
Tom tat ly thuyet thi bằng lái xe b2
Policy Based Assignment DHCP – Windows Server 2012
How to backup active directory domain services database in windows server 201...
Dns backup and recovery in windows server 2012 r2
Trend micro kết quả thử nghiêm đhyd
Cài đặt ảo hóa hyper v trên máy ảo vmware workstation 10
Lab direct access service
Cài đặt và cấu hình symantec live update administrator
Cách không cho hàng xóm xài ké wifi mà ko mích lòng
Wsus config[ver1.0]
HƯỚNG DẪN KIỂM TRA MÃ ĐỘC DOUBLEPULSAR CỦA NSA
Truyen cuoi song ngu anh viet

Bao cao web cake php

  • 1. ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO THỰC TẬP CÔNG NHÂN WEB Đề tài : Xây Dựng Hệ Thống EduPortal Trên Framework CakePHP GVHD : Th.s Trịnh Công Duy SVTH : Lã Xuân Tâm Đào Phan Hoàng Tuấn Trần Canh Ngọ Trương Công Khôi Lớp : 11TLT Đà nẵng ,06/2012
  • 2. CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.1 Tìm hiểu ngôn ngữ lập trình PHP & MySQL : 1.1.1 Ngôn Ngữ Lập Trình PHP,HTML,CSS,JavaScript: • HTMT,CSS,JavaScript: HTML (HyperText Markup Language, hay là "Ngôn ngữ Đánh dấu Siêu văn bản") là một ngôn ngữ đánh dấu được thiết kế ra để tạo nên các trang web với các mẩu thông tin được trình bày trên World Wide Web. Ngôn ngữ HTML có ưu điểm là rất đơn giản và có thể chạy tốt với nhiều hệ điều hành và nhiều trình duyệt web khác nhau. CSS (Cascading Style Sheets) được dùng để miêu tả cách trình bày các tài liệu viết bằng ngôn ngữ HTML và XHTML,XML,UML… Việc dùng Hạn chế tối thiểu việc làm rối mã HTML của trang Web bằng các thẻ quy định kiểu dáng (chữ đậm, chữ in nghiêng, chữ có gạch chân, chữ màu), khiến mã nguồn của trang Web được gọn gàng hơn, tách nội dung của trang Web và định dạng hiển thị, dễ dàng cho việc cập nhật nội dung. Tạo ra các kiểu dáng có thể áp dụng cho nhiều trang Web, giúp tránh phải lặp lại việc định dạng cho các trang Web giống nhau… JavaScript là một ngôn ngữ lập trình dựa trên nguyên mẫu với cú pháp phát triển từ C. Ngôn ngữ này được dùng rộng rãi cho các trang web. JavaScript được dùng để thực hiện một số tác vụ không thể thực hiện được với chỉ HTML như kiểm tra thông tin nhập vào, tự động thay đổi hình ảnh,... • Ngôn Ngữ PHP:
  • 3. PHP (Personal Home Page) ra đời năm 1994 do phát minh của Rasmus Lerdorf và nó được tiếp tục phát triển bởi nhiều cá nhân và tập thể khác,do đó PHP được xem như 1 sản phẩm mã nguồn mở. PHP (viết tắt hồi quy "Hypertext Preprocessor") là một ngôn ngữ lập trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho máy chủ(Server script), mã nguồn mở, dùng cho mục đích tổng quát. PHP là kịch bản cho phép chúng ta xây dựng dựng dụng web trên mạng internet,và dễ dàng nhúng vào các trang HTML.PHP hỗ trợ nhiều dạng cơ sở dữ liệu như : MySQL, Informix, Oracle, Sybase, Solid, PostgreSQL, Generic ODBC, vv. 1.1.2 Hệ quản trị cơ sơ dữ liệu MYSQL : MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. Vì MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên internet. MySQL miễn phí hoàn toàn cho nên bạn có thể tải về MySQL từ trang chủ. Nó có nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS, ... 1.1.3 Cài đặt môi trường làm việc PHP,Apache,MySQL: Để cài đặt PHP, các bạn có thể cài đặt từng gói riêng lẻ (PHP, Apache, Mysql). Tuy nhiên, tôi vẫn khuyến khích các bạn cài đặt dạng gói tích hợp. Sẽ tiện lợi cho việc sau này hơn rất nhiều.Để cài đặt môi trường thực thi PHP & MySQL trên windows thì có nhiều gói cho các bạn lựa chọn như XAMPP,WampServer,Vertrigo…đã bao gồm Web Server Apache,bộ xử lý PHP và MySQL.
  • 4. Hình 1: Php,Apache,MySQL 1.4 CakePHP Framework và mô hình 3 lớp MVC : 1.2.1 CakePHP FrameWork: CakePHP là một framework cho php, mục đích của nó là cung cấp một framework cho người sử dụng php phát triển những ứng dụng web nhanh, mạnh mà không mất tính linh hoạt của nó. Và điều quan trọng là CakePHP là mã nguồn mở miễn phí. Để sử dụng nó, yêu cầu người làm phải biết những kiến thức như: Cơ bản về PHP và HTML, Kiến trúc MVC,Lập trình hướng đối tượng. Hình 2 : cakephp 1.2.2 Một số tính năng của cakephp: • Nguồn mở, miễn phí, có cộng đồng sử dụng và hỗ trợ rộng lớn • Tương thích PHP4 và PHP5
  • 5. • Mô hình MVC • Đa ngôn ngữ • Sinh code tự động • Caching • Phân quyền (ACL) • Kiểm tra ràng buộc dữ liệu • Xây dựng nhiều thư viện hỗ trợ cho View như: Ajax, HTML Form, Javascript… • Xây dựng nhiều thư viện hỗ trợ cho Controller: Email, Security, Session, Cookies, Request Handling • Dễ dàng viết thêm thư viện hỗ trợ, liên kết với ứng dụng khác (thông qua vendors) • Đa giao diện • Hỗ trợ nhiều hệ quản trị CSDL 1.2.3 Cấu trúc thư mục cakephp: Hình 3: Cấu trúc thư mục cakephp Sau khi bạn download và giải nén CakePHP, bạn cần lưu ý đến 3 thư mục chính
  • 6. sau: • Thư mục app là nơi mà bạn làm việc: Nơi đây lưu các file của ứng dụng do bạn viết. • Thư mục cake là nơi bạn thay đổi các file core của CakePHP. Bạn phải thật cẩn thận khi thay đổi các file trong này, và chúng tôi không thể giúp gì cho bạn nếu bạn thay đổi các file core. • Thư mục plugins: chứa các thành phần mở rộng dùng cho ứng dụng • Thư mục vendors là nơi bạn cài các thư viện PHP của nhà cung cấp thứ 3 mà bạn cần để sử dụng với ứng dụng CakePHP của bạn.  Cấu trúc thư mục App: Thư mục app của CakePHP là nơi bạn chính bạn phát triển ứng dụng. Bây giờ chúng ta sẽ xem qua các thư mục phía trong của thư mục app. Hình 4: Cấu trúc thư mục App
  • 7.  Config: Nơi lưu giữ một số file cấu hình hệ thống của CakePHP.  Controller: chứa các controller và các component của ứng dụng  Libs : thư viện cakephp  Locale: lưu các file ngôn ngữ ,phục vụ cho ứng dụng đa ngôn ngữ  Model : chứa các file model và các behavior,datasource..  Plugin : chứa các gói mở rộng  Tmp : thư mục tạm của ứng dụng  Vendor : chứa ứng dụng của bên thứ 3  View : chứa các file giao diện  Webroot: chứa tài liệu(hình ảnh,file..),file css và javascript.. 1.2.4 Mô hình 3 lớp MVC: Cũng như các PHP framework khác, CakePHP hoạt động theo mô hình thiết kế phần mềm chuẩn MVC. Mô hình MVC trong CakePHP chia ứng dụng ra ba phần chính: Model, View và Controller, việc phân tách ứng dụng rõ ràng như vậy sẽ giúp bạn tách bạch các phần xử lý riêng biệt cho website của bạn, nó giúp cho code của bạn trong sáng hơn, dễ lập trình, dễ quản lý, chỉnh sửa, nâng cấp. Trong đó:  Model: mô tả dữ liệu của ứng dụng. Trên Model ta có thể thiết lập các ràng buộc dữ liệu, quan hệ giữa các bảng. Model giao tiếp với database, bạn sẽ viết các query cũng như các xử lý logic ở đây.  View: đảm nhận việc hiển thị thông tin đã được xử lý gới đến từ Controller, View còn được hiểu nôm na là nơi chứa các file html của bạn để hiển thị cho nguời xem.
  • 8.  Controller: xử lý và điều hướng các yêu cầu của client, Controller nơi bạn trực tiếp viết các xử lý lấy các request từ url và form để thao tác trực tiếp với Model, sau đó dùng View để hiển thị ra. Hình 5: Mô hình 3 lớp MVC Hình 6 Mô hình MVC
  • 9.  Đầu tiên client sử dụng web browser để gởi yêu cầu đến ứng dụng bằng cách gõ hoặc click vào một đường link liên kết.  Bộ phận điều vận Dispatcher (là một thành phần của CakePHP) sẽ kiểm tra phần tử để xác định controller nào sẽ thực thi và gởi yêu cầu tới controller tương ứng  Khi yêu cầu được gởi đến Controller, nó sẽ làm một vài thao tác luận lí cần thiết, có thể nó sẽ xử lý ngay tại Controller hoặc sử dụng Model tương ứng để truy xuất dữ liệu. Dữ liệu ở đây có thể là các record trong table của một database, hoặc một dạng khác.  Sau khi lấy được dữ liệu, Controller sẽ đưa dữ liệu này ra View và View này có nhiệm vụ chuẩn bị đưa dữ liệu đầu ra. View có thể chuẩn bị dữ liệu ở dạng HTML, PDF, tài liệu XML hoặc một đối tượng JSON, cuối cùng là view sẽ được hiển thị trên trình duyệt.
  • 10. CHƯƠNG 2 : XÂY DỰNG CỔNG THÔNG TIN TRƯỜNG HỌC EDUPORTAL DỰA TRÊN CAKEPHP FRAMEWORK 2.1 Portal là gì: Portal (cổng giao dịch điện tử) là một bước tiến hóa của website truyền thống. Nó ra đời để giải quyết những vấn đề mà website truyền thống gặp phải. Là "siêu web site“, gọi tắt là Portal, đối với người dùng vẫn chỉ là sử dụng trang web thông qua trình duyệt (tức là web browser), nhưng đằng sau đó là sự thay đổi thuật ngữ và quan niệm mới về triết lý phục vụ thay cho cách hiểu “tuyên truyền” thông qua web site như trước đây. Là điểm đích qui tụ hầu hết các thông tin và dịch vụ cho người sử dụng cần, là điểm đích đến thực sự. Thông tin và dịch vụ được phân loại nhằm thuận tiện cho tìm kiếm và hạn chế vùi lấp các thông tin. Bảo toàn đầu tư lâu dài. Có nền tảng công nghệ đảm bảo, do công nghệ Internet đã phát triển rất cao so với thời kỳ xuất hiện World Wide Web vào đầu những năm 90 của thế kỷ trước. Những công nghệ tạo nên thời đại Portal đều hỗ trợ tính mở và kế thừa rất mạnh, sao cho việc mở rộng các qui mô phục vụ bằng các phần mềm ứng dụng mới được “lắp ráp” vào Portal đang có, mà không phải hủy bỏ hoặc sửa chữa lớn như những web site trước đây. Môi trường chủ động dùng cho việc tích hợp ứng dụng Phía ngoài, cung cấp một cổng giao dịch thân thiện, đủ các chức năng cho người dùng, trong đó có chức năng cá nhân hóa. Phía trong, là cung cấp một hạ tầng điện tử, nhằm tạo quyền chủ động trong việc cung cấp, tích hợp thông tin và liên kết với các hệ thống, các dịch vụ thông tin khác.
  • 11. Cung cấp môi trường cộng tác (collaborative) thông qua việc quản lý và khai thác thống nhất toàn diện các dịch vụ cơ bản như: Forum, Mail, Calendar, Task Management, Report Systems, Conferences, Discussion Groups, News Groups, v.v... Các dịch vụ này là một phần của kho tài nguyên dịch vụ trên portal để người dùng lựa chọn. Việc quản lý người dùng được thực hiện một lần và thống nhất trên tất cả các ứng dụng dịch vụ của portal. Tóm lại, triết lý của portal là “siêu web site” để phục vụ tốt hơn thông qua quan hệ bình đẳng và tình cảm gắn bó với “siêu web site”, là định hướng phục vụ (user-centric), khác với sự phát triển tự nhiên của web site truyền thống là định hướng trình bày thông tin (data-centric). 2.2 Khái quát chung về xây dựng hệ thống eduportal dựa trên cakephp - Xây dựng các chức năng cơ bản của website với giao diện thân thiện,dễ tương tác đối với người dùng. - Bao gồm các chức năng ,hệ thống menu giúp người dùng thao tác sử dụng nhanh. - Nội dung được phân loại,phân cấp theo từng chuyên mục rõ ràng,giúp cho việc thêm,sửa,xóa dữ liệu trở nên đơn giản hơn. - Việc tùy biến nội dung cũng là một yêu cầu hàng đầu. Ban quản trị có thể dễ dàng sắp xếp nội dung theo nhiều tiêu trí (tin đọc nhiều nhất, tin mới nhất, tin được phản hồi nhiều nhất, tin chuyên đề….) và quản lý việc hiển thị theo vị trí, theo từng nhóm, trên từng trang … - Việc quản trị được phân quyền rõ ràng,giúp người quản trị dễ dàng theo dõi tin tức cũng như các hoạt động của website. - Việc đăng ký thành viên rất dễ dàng nhanh gọn
  • 12. - Hệ thống tìm kiếm giúp người dùng có thể tìm kiếm nhanh nội dung mình mong muốn một cách chính xác nhất.. - Tương thích với tất cả các trình duyệt web,hỗ trợ nhiều thiết bị hiển thị 2.3 Thiết kế cơ sở dữ liệu MẤY PHẦN Ở TRÊN OK HẾT RỒI ĐÓ.CÒN BẮT ĐẦU TỪ ĐÂY XUỐNG DƯỚI CÒN VÀI CÁI NỮA LÀ XONG ĐÓ.MI COI THỬ HỈ.CHỨ 2 THẰNG LÌN KIA ÉO BIT LÀM CÁI MẸ GÌ HẾT.CHÁN VL RA. --------------------------------------------------------------------------------------------------- (chụp mấy cái bảng csdl,rồi tên dữ liệu thuộc tính của nó chèn vô đây nhá) Giống cái báo cáo của bọn ni nè,vd mẫu thui nhá.lấy của mình thay vào 2.4 Các chức năng giao diện tương tác trong hệ thống eduportal:
  • 13. CHỖ NÀY THÌM CHỤP HÌNH CÁC CHỨC NĂNG CỦA SITE MÌNH NHƯ: TRANG CHỦ,CÁC TRANG MENU KHI DẪN LINK TỚI,TRANG ĐĂNG KÝ,TRANG QUẢN TRỊ,CÁC MỤC LIÊN KẾT…. NÓI SƠ QUA VỀ MẤY CHỨC NĂNG NHƯ NÀO NHA. ÉO MỊA THAY MẤY CÁI TIN ĐIỆN THOẠI HẾT BẰNG TIN GIÁO DỤC VÔ ĐI.ĐỂ ĐÓ ÔNG THẦY CHO DIE GIỜ. SAO THÍM CHƯA CODE MẤY ĐƯỜNG DẪN CHỖ MENU AH.TOÀN DẪN LINK ĐI ĐÂU THẾ,CODE MẤY TRANG LK ĐÓ ,ĐƯA DỮ LIỆU SƠ SƠ VÔ THÔI,KO CẦN NHIỀU ĐÂU,NÓI CHUNG CÓ DẪN ĐẾN ĐƯỢC OY.THÍCH ĐỘNG HAY TĨNH GÌ CŨNG DC, MỤC LIÊN HỆ LÀM 1 TRANG ĐƯA INFO NHƯ BỌN NÀY NÈ  TRÊN CÙNG BÊN TRÁI ĐÓ.MÀ CỦA MÌNH CHƠI HẲN 1 TRANG LUÔN.GHI TÊN THÀNH VIÊN NHÓM,TÊN ĐỀ TÀI KIỀU KIỂU NHƯ BỌN NÓ VẬY.GỌI LÀ CHO CÓ.HEHE
  • 14. Xem cái hình trên nhá. Đưa cái khung thông báo bên dưới lên trên bảng site liên kết nhá Chõ liên kết đưa mấy cái logo dhdn,bộ giáo dục vô chỗ đó.cho cái khung đó dài xuống.quất nhìu logo vô cho nó khỏi trống trải.ok :D Rầu tạm thời nhiu đó.nếu có ý tưởng gì thì thêm vô nữa nha.chăm chút giao diện tí đi,.ông thầy ông hay để ý giao điện dó. Rùi còn phần kết luận nữa.nêu những cái đạt dc rùi hạn chế gì đó,thêm bữa vô nha, 4h sáng ùi bùn ngủ quá.ngủ đã có gì trưa ăn cơm xong qua chỗ ta luôn ngồi hoàn thiện nốt rồi chở ta đi báo cáo với. 