1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng Cổng thông tin ẩm thực Hà Thành

64 207 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 64
Dung lượng 7,29 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Việc xây dựng một Website về ẩm thực Hà Nội không những cho ta thông tin hữu ích về sức khỏe con người màcòn là nét văn hóa đặc trưng văn hóa, điều này sẽ làm tăng khả năng tận dụng ưuth

Trang 1

LỜI NÓI ĐẦU

Ngày nay song song với quá trình phát triển công nghệ khoa học và kỹ thuậtthì ngành công nghệ thông tin cũng đã đóng một vai trò vô cùng quan trọng, có ảnhhưởng lớn đến cuộc sống của con người, và đang đạt được những thành tựu rực rỡ,với những bước tiến nhảy vọt Mạng Internet là một trong những sản phẩm có giátrị hết sức lớn lao và ngày càng trở thành một công cụ không thể thiếu, là nền tảngchính cho sự truyền tải, trao đổi thông tin trên toàn cầu

Sự phát triển nhanh chóng của nền kinh tế toàn cầu cũng như nền kinh tếnước ta trong những năm gần đây dẫn đến việc các doanh nghiệp phát triển ngàycàng mạnh mẽ hơn Mức sống của con người ngay càng được nâng cao hơn Conngười hiện đại, ngoài các nhu cầu thông thường còn có thêm nhiều nhu cầu khác,như vui chơi, giải trí, tham quan, du lịch, tìm hiểu thông tin…

Với cuộc sống và công việc luân bận rộn thì Internet càng trở nên quantrọng hơn Không cần phải mất nhiều thời gian và công sức để tìm kiếm một thôngtin nào đó, với Internet, mọi thứ dường như đã được trang bị đầy đủ, theo như sốliệu điều tra, cứ mỗi giây lại có thêm vài chục trang Web mới bổ xung vào hàng tỷtrang đã có

Ẩm thực là một nội dung quan trọng, vừa là văn hóa vật chất, vừa là văn hóatinh thần.Nó thể hiện cốt cách, phẩm hạnh của một dân tộc, một con người, màcũng là một tiêu chí đánh giá chất lượng cuộc sống Việc xây dựng một Website về

ẩm thực Hà Nội không những cho ta thông tin hữu ích về sức khỏe con người màcòn là nét văn hóa đặc trưng văn hóa, điều này sẽ làm tăng khả năng tận dụng ưuthế của công nghệ thông tin nói chung cũng như Internet nói riêng trong cuộc sốngcon người…

Trong thời gian học tập và nghiên cứu tại nhà trường, dưới sự dạy dỗ và chỉbảo của các thầy, cô giáo, em đã trang bị được những kiến thức bổ ích và rất thiếtthực trong cuộc sống Những kiến thức đã được học trong nhà trường sẽ là hànhtrang vững chắc giúp em bước vào đời một cách tự tin hơn

Chính vì vậy cùng với sự hướng dẫn của PGS.TS Nguyễn Đăng Tộ,GVPhạm Trí Công và sự nỗ lực của bản thân, em đã chọn thực hiện đề tài “Cổng thôngtin ẩm thực Hà Thành”

Trang 2

Chương 1:Giới thiệu1.1 Đặt vấn đề

Tra cứu và tìm kiếm thông tin là một hoạt động thường xuyên của con người.Các Website quản lý thông tin là những hệ thống hỗ trợ việc tra cứu và tìm kiếm thôngtin liên quan đến nhiều lĩnh vực trong đời sống Giúp người xem có thể tiết kiệm đượcnhiều thời gian và công sức cũng như tiền của cho việc tìm kiếm chúng khi không cóInternet Hiện nay nhu cầu về sức khỏe, ăn ngon là rất thiết yếu.Vì vậy em xây dựng

đề tài “Cổng thông tin ẩm thực Hà Thành” không chỉ cung cấp thông tin về nhu cầucuộc sống, mà còn mang lại những nét văn hóa riêng của Hà Nội

1.2 Mục tiêu đề tài

Đề tài đưa ra những thông tin về Hà Nội :

1.3 Nội dung đề tài

Xử lý về quản lý và tìm kiếm thông tin:

1.4 Công cụ và môi trường làm việc

Trang 3

Chương 2 :Công cụ và giới thiệu2.1 WAMP

Wamp: Một gói phần mềm Web Server tất cả trong một (All-in-One)gồm: Apache, MySQL, PHP chạy trên nền Windows Chồng phần mềm Wamp chucấp các nhà phát triển với bốn phần tử then chốt của một máy chủ web: một hệ điềuhành, kho dữ liệu, máy chủ đãi web và phần mềm ra văn mã cho mạng web Sự hợp lạicủa việc sử dụng những chương trình này gọi là một chồng trên máy chủ (serverstack) Trong chồng này, Microsoft Windows hệ điều hành (operating system),Apache là phần mềm máy chủ web, MySQL lo liệu các thành phần kho dữ liệu, tronglúc PHP, Python, hoặc PERL tượng trưng các ngôn ngữ chủ động ra văn mã

Nó cho phép bạn tạo các ứng dụng Web với Apache, PHP, và cơ sở dữ liệuMySQL Nó cũng đi kèm với PHPMyAdmin và SQLiteManager để dễ dàng quản lý

cơ sở dữ liệu của bạn WampServer cài đặt tự động (cài đặt), và cách sử dụng của nó làrất trực quan Bạn sẽ có thể điều chỉnh ngay cả máy chủ của bạn mà không cần chạmvào các tập tin cài đặt WampServer là chỉ đóng gói giải pháp mà sẽ cho phép bạn saochép sản xuất máy chủ của bạn Khi WampServer được cài đặt, bạn có khả năng thêmbao nhiêu Apache, MySQL, và PHP bản phát hành như bạn muốn WampServer cũng

có một trayicon để quản lý các máy chủ của bạn và các thiết lập của nó

Các đặc điểm nổi bật của Wamp :

Trang 4

Sau đây là những chương trình tự động cài đặt khi bạn cài WAMP:

các trang web, nhưng nó chỉ hiểu HTML thôi!

Nhờ PHP mà Apache biết làm việc với những trang Php, nói cách khácApache+PHP = một server PHP

liệu (CSDL)!

2.2 Cơ sở dữ liệu My SQL

2.2.1 Giới thiệu chung về 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à đượccá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ó truycập CSDL trên internet MySQL rất thích hợp cho các ứng dụng có truy cập CSDL từtrên internet MySQL được sử dụng miễn phí hoàn toàn Nó có nhiều phiên bản chocá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,…

MySQL là một trong những ví dụ rất cơ bản về Hệ Quản Trị Cơ Sở Dữ liệu quan

hệ sử dụng ngôn ngữ truy vấn có cấu trúc (SQL)

MySQL được sử dụng cho việc bổ trợ PHP, Perl, và nhiều ngôn ngữ khác, nólàm nơi lưu trữ những thông tin trên các trang web viết bằng PHP hay Perl,…

2.2.2 Các đối tượng của MYSQL

Trong cơ sở dữ liệu, bảng (Table) là thành phần chính của chúng Do đó bảng làđối tượng lưu trữ dữ liệu thực, khi cần giao tiếp với cơ sở dữ liệu khác, bảng là đối

Trang 5

tượng căn bản nhất trong bất kỳ loại cơ sở dữ liệu nào, chúng được coi như một miền

dữ liệu

Bảng dùng để lưu trữ tất cả dữ liệu và được tổ chức thành nhiều hàng và nhiềucột Mỗi cột trong bảng có thể lưu một loại thông tin nhất định gọi là kiểu dữ liệu, dữliệu nhập vào có thể chấp nhận hoặc từ chối tùy thuộc vào nguyên tắc ràng buộc dữliệu hoặc dữ liệu tương thích do hệ thống hay người dùng định nghĩa

Khi định nghĩa cơ sở dữ liệu ta cần quan tâm đến các thông số sau:

Key: Trường đó có khóa hay không

ID: Trường có thuộc tính Identity hay không

Column Name: Tên của trường

Data type: Loại dữ liệu cho trường tương ứng

Size: Kích thước trường dữ liệu

Allow null: Cho phép giá trị rỗng lưu trong trường hay không

Default: Giá trị mặc nhiên cho trường

Identity: Nếu bạn cần sử dụng một trường có giá trị tự động nhưAutonumber trong access, trường này not null và Identity: yes (no).Identity seed: Nếu trường (cột) này là identity, cần số bắt đầu số 1 hoặc

2 …

Index hay còn gọi là chỉ mục, đối tượng này chỉ tồn tại trong bảng hay khungnhìn (view) Chỉ mục này có ảnh hưởng tới tốc độ truy cập số liệu, nhất là khi cần tìmkiếm thông tin trên bảng, chỉ mục giúp tăng tốc độ cho việc tìm kiếm

Clustered: Ứng với mỗi chỉ mục này một bảng chỉ có một chỉ mục, và sốliệu được sắp xếp theo trang

Non-clustered: Ứng với chỉ mục này một bảng có thể có nhiều chỉ mục

và dữ liệu được sắp xếp theo trường dữ liệu mà bạn chỏ tới

Trang 6

• Bẫy lỗi - Triggers:

Nếu đối tượng chỉ tồn tại trong bảng, cụ thể là một đoạn mã, và tự động thực thikhi có một hành động nào đó xảy ra đối với dữ liệu trong bảng như: Insert, Update,Delete

Trigger có thể sử dụng để bẫy rất nhiều tình huống như copy dữ liệu, xóa dữ liệu,cập nhập dữ liệu, kiểm tra dữ liệu theo tiêu chuẩn nào đó

View cho phép bạn chia ngang hay dọc thông tin từ một hay nhiều bảng trong cơ

sở dữ liệu, sử dụng View như là một đối tượng trong MY SQL, khi cần thiết sử dụngđến View, kết quả View trả về bằng việc truy vấn dữ liệu theo yêu cầu người dùng.Mục đích sử dụng View:

Hạn chế tính phức tạp của dữ liệu đến người dùng

Kết nối dữ liệu từ nhiều bảng lại với nhau

Sử dụng tài nguyên Server để thực hiện việc truy vấn

Tạo ra một bảng ảo có dữ liệu như yêu cầu

Kết hợp một số hàm và phương thức tạo ra các cột mới

Thủ tục nội hay còn gọi là Spocs, tiếp tục phát triển như một phần lập trình SQLtrên cơ sở dữ liệu Store Procedure cho phép khai báo biến, nhận tham số cúng nhưthực thi các phát biểu có điều kiện Store Procedure có các ưu điểm sau:

Trang 7

Kế thừa tất cả các phát triển của SQL, và là một đối tượng xử lý số liệuhiệu quả nhất khi dùng MY SQL.

Tiết kiệm thời gian thực thi trên dữ liệu

Có thể gọi những Stored Procedure theo cách gọi của thủ tục hay hàmtrong các ngôn ngữ lập trình truyền thống, đồng thời sử dụng lại khi cóyêu cầu

2.3 PHP

2.3.1 Giới thiệu chung về PHP

PHP được phát triển từ ngôn ngữ kịch bản (script) với mục địch xây dựng trangWeb cá nhân (Personal Home Page) Sau đó đã được phát triển thành một ngôn ngữhoàn chỉnh và được ưa chuộng trên toàn thế giói trong việc phát triển các ứng dụngWeb based

PHP (viết tắt hồi quy "PHP: Hypertext Preprocessor") là một ngôn ngữ lập trìnhkị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 chomáy chủ, mã nguồn mở, dùng cho mục đích tổng quát Nó rất thích hợp với web và cóthể dễ dàng nhúng vào trang HTML Do được tối ưu hóa cho các ứng dụng web, tốc

độ nhanh, nhỏ gọn, cú pháp giống C và Java, dễ học và thời gian xây dựng sản phẩmtương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành mộtngôn ngữ lập trình web phổ biến nhất thế giới

Trước tiên chúng ta hãy tìm hiểu cách thức hoạt động của hệ trình duyệt (WebClient) và máy chủ cung cấp dịch vụ Web (Web server ):

Bước 1: Trình duyệt gửi một yêu cầu HTTP đến máy chủ, yêu cầu một file nàođó

Bước 2: Máy chủ sẽ chuyển yêu cầu này đến chương trình xử lý tương ứng,chính là chương trình Web server

Bước 3: Web server phân tích chuỗi yêu cầu nhận được, kiểm tra xem trình duyệt

ở máy khách yêu cầu gì Nếu đó là các file bình thường (không phải là các file chứacác đoạn mã script thực thi phía máy chủ), nó sẽ tìm kiếm file đó và trả về cho trìnhduyệt ở máy khách Còn nếu đó là các file chứa các đoạn mã script thực thi phía máychủ (các chương trình CGI, hay các file thư viện liên kết động ISAPI, hoặc các file

*.asp hay *.php), nó sẽ triệu gọi chương trình thực thi các đoạn mã này Chương trình

Trang 8

này sẽ chịu trách nhiệm chạy các đoạn mã, trả chúng về cho Web server dưới khuôndạng của HTML Sau đó, Web server mới trả kết quả lấy được cho trình duyệt.

Như vậy, chương trình của bạn phải được thực thi trên máy chủ, sau đó mới đượctrả về cho trình duyêt Và đây chính là cái gọi là "Trang Web động" Không như cáctrang web tĩnh, trang web động cho phép bạn có sự tương tác với máy chủ thông quacác đoạn script thực thi phía server Nhờ có sự tương tác này, bạn có thể truy xuất cơ

sở dữ liệu, lấy thông tin người sử dụng, điều khiển các hoạt động khác

2.3.2 Lý do chọn PHP

PHP Rất đơn giản đối với nhưng người còn xa lạ với chương trình này đây là sựlôi cuốn mạnh mẽ nhất Thậm chí là rất ít hoặc không có một chương trình nào có thểtạo ra một tốc độ đáng kinh ngặc trong việc phát triển bành trướng như PHP Bởi vì nó

đc thiết kế đặc biệt trong các ứng dụng Web, PHP xây dựng được rất nhiều tính năng

để đáp ứng những nhu nhu cầu chung nhất

PHP là một mã nguồn thông tin mở: Bởi vì mã nguồn của PHP sẵn có nên cộngđồng các nhà phát triển Web luôn có ý thức cải tiến nó, nâng cao để khắc phục các lỗitrong chương trình này PHP rất ổn định và tương hợp, PHP Ngoài ra PHP chạy đượctrên nhiều hệ điều hành khác nhau

Rút ngắn thời gian phát triển :

giữa công việc phát triển mã và thiết kế Điều này vừa giúp lập trình viên dễdàng hơn vừa có thể làm cho chương trình mềm dẻo hơn trong việc thay đổigiao diện

bạn sử dụng cho mục đích thương mại)

chóng được sửa chữa bởi nhiều chuyên gia

PHP vượt hơn ở một số test, vượt trội ở tốc độ biên dịch

Trang 9

• Tính khả chuyển :

nhiều phần mềm máy chủ, cơ sở dữ liệu (ví dụ: bạn có thể phát triển dự án trênUNIX, sau đó chuyển sang NT mà không gặp phải bất cứ vấn đề gì)

MVC = Model - View - Controller

Kiến trúc MVC là việc chia tất cả mục của một ứng dụng ra làm ba thành phần(component) khác nhau Model, View và Controller Các thành phần của kiến trúcMVC một trách nhiệm duy nhất và không phụ thuộc vào các thành phần khác Những

sự thay đổi trong một thành phần sẽ không có hoặc là có rất ít ảnh hưởng đến cácthành phần khác Các trách nhiệm của mỗi thành phần là:

Model ( tạm dịch là phần “Mô hình” ): Model được giao nhiệm vụ cung cấp dữliệu cho cơ sở dữ liệu và lưu dữ liệu vào các kho chứa dữ liệu Tất cả các nghiệp

vụ logic được thực thi ở Model Dữ liệu vào từ người dùng sẽ thông qua Viewđược kiểm tra ở Model trước khi lưu vào cơ sở dữ liệu Việc truy xuất, xác nhận,

Trang 10

View (tạm dịch là phần “Hiển thị”): Là phần giao diện với người dùng Viewhiển thị các thông tin cho người dùng của ứng dụng và được giao nhiệm vụ choviệc nhận các dữ liệu vào từ người dùng, gửi đi các yêu cầu đến bộ điều khiển,sau đó là nhận lại các phản hồi từ bộ điều khiển và hiển thị kết quả cho ngườidùng Các trang HTML, JSP, các thư viện thể và các file nguồn là một phần củathành phần View.

Controller (tạm dịch là phần “Điều khiển”): Controller là tầng trung gian giữaModel và View Controller được giao nhiệm vụ nhận các yêu cầu từ phía máy khách.Một yêu cầu được nhận từ máy khách được thực hiện bởi một chức năng logic thíchhợp từ thành phần Model và sau đó sinh ra các kết quả cho người dùng và đượcthành phần View hiển thị ActionServlet, Action, ActionForm và strutsconfig.xml làcác phần của Controller

Với cơ sở là kiến trúc MVC, ta có thể xây dựng các ứng dụng của mình, tránhđược rất nhiều những vất vả khi bảo trì, thay đổi Những thay đổi ở mỗi thành phầnthường rất ít khi ảnh hưởng đến các thành phần khác

2.4.2 Ưu điểm và nhược điểm của mô hình MVC

Ưu điểm

Mô hình MVC giúp cho ứng dụng dễ bảo trì, mobule hóa, và được xây dựngnhanh chóng MVC tách các tác vụ của ứng dụng thành các phần riêng lẽ model, view,controller giúp cho việc xây dựng ứng dụng nhẹ nhàng hơn Dễ dàng thêm các tínhnăng mới, và các tính năng cũ có thể dễ dàng thay đổi MVC cho phép các nhà pháttriển và các nhà thiết kế có thể làm việc đồng thời với nhau, kể cả trong bước pháttriển prototype MVC cho phép thay đổi trong 1 phần của ứng dụng mà không ảnhhưởng đến các phần khác

Sự dễ dàng trong viết code test là một thuận lợi khi áp dụng MVC Test nhữngcomponent của chương trình trở nên rất khó khăn khi chúng phụ thuộc chặt chẽ vàonhau, đặc biệt đối với những thành phần giao diện Để test giao diện của một phầnmềm, tất nhiên bạn phải qua các bước cài đặt và đôi khi điều đó trở nên rất mất thờigian khi chỉ để test một chức năng đơn giản Tệ hơn khi xảy ra lỗi, chúng ta sẽ rất khó

để phát hiện lỗi ở phần nào Đó là lý do tại sao chia nhỏ các thành phần chức năng làmột trong những chiều hướng chính của các thiết kế quan trọng MVC chia nhỏ các

Trang 11

vấn đề như lưu trữ, hiển thị và cập nhật dữ liệu thành 3 nhóm components, nhữngcomponent này có thể được test độc lập với nhau.

Ngoài vấn đề về sự phụ thuộc, giao diện của phần mềm cũng rất phức tạp khimuốn test Người ta thường sử dụng người thật để test giao diện, hoặc sẽ phải viếtnhững script test để giả lập những thao tác của con người Để viết những script nàythường rất mất thời gian và phức tạp MVC không giải quyết được vấn đề về test giaodiện, nhưng nó tách rời phần dữ liệu Model ra khỏi những xử lý hiển thị và cho phépMODEL có thể được test độc lập với phần hiển thị và điều đó sẽ giảm thiểu những testcase liên quan đến giao diện

PHP là 1 ngôn ngữ script rất phổ biến hiện nay bởi những lý do: linh hoạt, dễ sử

dụng, dễ học… nhưng đôi khi việc viết mã PHP, hay bất cứ ngôn ngữ (lập trình) nào

khác, có thể trở nên đơn điệu và lủng củng Đó là lúc PHP framework có thể giúp ban PHP frameworks làm cho sự phát triển của những ứng dụng web viết bằng ngôn

ngữ PHP trở nên trôi chảy hơn, bằng cách cung cấp 1 cấu trúc cơ bản để xây dựng

những ứng dụng đó

Hay nói cách khác, PHP framework giúp đỡ các bạn thúc đẩy nhanh chóng quátrình phát triển ứng dụng, giúp bạn tiết kiệm được thời gian, tăng sự ổn định cho ứngdụng, và giảm thiểu số lần phải viết lại mã cho lập trình viên Ngoài ra Framework còngiúp những người mới bắt đầu có thể xây dựng các ứng dụng ổn định hơn nhờ việc

tương tác chính xác giữa các Database, mã (PHP) và giao diện (HTML) 1 cách riêng

biệt Điều này cho phép bạn dành nhiều thời gian để tạo ra các ứng dụng web, hơn làphí thời gian để viết các đoạn mã lặp lại trong 1 project

Ý tưởng chung đằng sau cách thức làm việc của 1 PHP framework được kể đến làModel View Controller (MVC)

Trang 12

2.5.2 Tại sao chúng ta nên sử dụng PHP Framework?

Giúp các lập trình viền tăng tốc quá trình phát triển ứng dụng Việc sử dụng lạicác mã lệnh giống nhau trong nhiều project sẽ giúp các bạn tiết kiệm được thời gian vàcông sức 1 cách đáng kể Một framework sẽ cung cấp sẵn các module nền tảng cầnthiết để xây dựng 1 project, vì thế, các lập trình viên có thể tận dụng được thời gian đểphát triển các ứng dụng thực tế, hơn là mất thời gian để xây dựng lại nền tảng trên mỗiproject

Sự ổn định là 1 lý do lớn đối với các lập trình viên đang sử dụng Framework.Tính đơn giản là 1 điểm mạnh của PHP, đó là lý do tại sao lại có nhiều người thích sửdụng nó, nhưng đồng thời đó cũng là điểm yếu của nó PHP thì khá dễ học và sử dụng,đặc biệt là đối với những người mới làm quen với lập trình, tuy nhiên, họ có thểthường xuyên viết mã 1 cách không khoa học và thậm chí không hề nhận thức đượcđiều này, với PHP, trong nhiều trường hợp các ứng dụng vẫn sẽ làm việc được, nhưng

vô tình họ có thể tạo ra các lỗ hổng bảo mật lớn trong mã lệnh của mình, và bị hackerkhai thác

Hầu hết các PHP framework đều có sẵn rất nhiều thành phần mở rộng(extensive), và cũng có rất nhiều framework khác nhau để các bạn lựa chọn Bạn thậmchí còn có thể tự viết riêng cho mình 1 framework Tuy nhiên, bạn nên cân nhắc kỹ

trước khi quyết định sử dụng 1 framework nào cho mình hay không, nên tự đặt câu hỏi

cho chính mình là: Nó có tiết kiệm được cho bạn thời gian và công sức hay không? Cógiúp ứng dụng bạn hoạt động tốt hơn không? Có cải thiện được sự ổn định cho ứngdụng không? Hãy tìm ra câu trả lời cho chính mình để quyết định xem bạn có cần xàiframework hay chưa, và nên xài framework nào

2.5.3 PHP Framework phổ biến nhất hiện nay

Trong vài năm qua, PHP đã tiến triển thành 1 ngôn ngữ script được lựa chọn bời

hầu hết các nhà phát triển website, đã có 1 sự bùng nổ về các PHP framework, dẫn đếncác cuộc tranh luận lớn về đề tài: PHP framework nào là tốt nhất, bởi vì thực tế khôngphải tất cả các framework đều được xây dựng trên khuôn khổ dành cho nhiều người sửdụng Dưới đây là 5 framework được đánh giá là tốt và phổ biến nhất hiện nay:

Trang 13

The Zend Framework

Zend Framework có 1 cộng đồng phát triển rộng lớn, và nó tập trung vào các ứngdụng web theo phong cách 2.0 Vì được phổ biến rộng rãi, và có 1 cộng đồng ngườidùng tích cực, Zend được gọi là “Công ty PHP” Zend là 1 trong những frameworkphổ biến nhất hiện nay Nó có các tính năng mạnh mẽ, thường được sử dụng cho cáccông ty lớn, và bạn cần phải có lượng kiến thức khá sâu rộng về PHP để có thể sửdụng được nó

Trang 14

CakePHP là 1 lựa chọn tuyệt với cho những lập trình viên có kiến thức nâng cao

về PHP Nó dựa trên cùng 1 nguyên tắc thiết kế với Ruby on Rails, là 1 framework

mạnh về khía cạnh rapid development, giúp lập trình viên đẩy nhanh quá trình pháttriển ứng dụng của họ Với các hệ thống hỗ trợ, tính đơn giản và mỗi trường mở cao đãgiúp cho Cakephp là một trong framework phổ biến nhất hiên nay

Trang 15

Symfony được ra đời nhằm mục đích giúp đỡ nâng cao hơn cho những lập trìnhviên muốn tạo ra các ứng dụng website doanh nghiệp Đây là 1 PHP framework mãnguồn mở với đầy đủ các tính năng cần thiết nhưng nó có vẻ chạy chậm hơn cácframework khác

Codelgniter

Trang 16

Codelgniter được biết đến như 1 framework dễ hiểu và dễ sử dụng, cho hiệu suấtcao Không giống như Symfony, PHP framework này phục vụ mục đích lý tưởng choviệc xây dưng các ứng dụng chia sẻ, lưu trữ Nó cung cấp các giải pháp đơn giản, và

có một thư viện video hướng dẫn phong phú, diễn đàn hỗ trợ, và cung cấp sẵn 1 hướngdẫn sử dụng cho người mới bắt đầu PHP framework này rất phù hợp cho 1 người mớilàm quen với framework

Seagull

Trang 17

Seagull cũng là 1 PHP framework tốt phục vụ cho việc xây dưng website và cácGUI Nó là 1 framework cực kỳ dễ sử dụng cho cả những người mới mới làm quen vớilập trình PHP đến những chuyên gia trong lập trình PHP Với những người mới làmquen với lập trình PHP, Seagull cung cấp 1 thư viện các mẫu ứng dụng có thể được tùychỉnh để phù hợp với nhu cầu của bạn Đối với các chuyên gia PHP, Seagull cung cấpcác tùy chọn máy chủ, bao gồm các phương pháp hay nhất, tiêu chuẩn, và modularcodebase - giúp các lập trình viên xây dựng các ứng dụng web một cách nhanh chóng

và dễ dàng Seagull có một cộng đồng phát triển rộng lớn và nhiều tài liệu hướng dẫn

hỗ trợ

2.5.4 Khái quát về Kohana Framework

Kohana là một ứng dụng web khuôn khổ cho PHP5 mà thực hiện theo mô hình Model View Controller (HMVC) Nó được thiết kế để được an toàn, nhẹ, và dễ

sử dụng

Trong khi việc phát hành ban đầu của Kohana là bản chất là một phiên bản cảitiến của CodeIgniter

Trang 18

Nó đòi hỏi rất ít cấu hình, hỗ trợ đầy đủ UTF-8 và I18N, và cung cấp nhiềucông cụ mà một nhà phát triển nhu cầu trong một hệ thống rất linh hoạt Lớp tíchhợp tự động tải, hệ thống tập tin tầng, API nhất quán cao, và tích hợp dễ dàng với cácthư viện nhà cung cấp làm cho nó khả thi cho bất kỳ dự án lớn hay nhỏ.

Trang 19

Mô hình MVC của framework Kohana

Tại sao phải sử dụng kohana ?

Kiến trúc của Kohana Framework đuợc thiết kế một cách khá linh động, giúp người sử dụng vừa sử dụng các features có sẵn mà kohana cung cấp, đồng thờicho phép mở rộng (extends) các features mà không làm ảnh hưởng đến hệ thống.Một số tính năng nổi bật của Kohana :

(smary, twig , rain tpl ), mail sender (swiff mail), tinymce

code profiling

Trang 20

2.5.5 Khái quát simple framework MVC

2.5.5.1 Giới thiệu simple Framework MVC

Mô hình MVC cho Simple framework MVC

Simple framework MVC là một PHP framework theo cấu trúc MVC được viếttrên PHP4 và hỗ trợ cả PHP4 và PHP5 Nó là một tập hợp các thư viện viết sẵn trênPHP giúp chúng ta phát triển web bằng PHP nhanh hơn là cách viết lắp ghép thôngthường, các thư viện này giúp chúng ta thực hiện các tác vụ thông thường của một ứngdụng web như kết nối và thực hiện các công việc liên quan đến cơ sở dữ liệu, uploadfile, xử lý hình ảnh, phân trang, cookie, session, bảo mật … Đồng thời các thư việnnày cũng giúp chúng ta tổ chức code tốt hơn với mô hình MVC

Trang 21

Cơ bản về simple framework MVC, trong folder cse_wru application trong thưmục system ta chú ý đến :

mục css, images, js, upload…

File Index.php đóng vai trò là bootstrapper cho ứng dụng, nó sẽ nhận yêu cầu

và phân tích nội dung request để chuyển tới file php khác thực hiện xử lý thíchhợp Nó là nơi để cấu hình hoàn toàn trang web

File Defile.php dùng để kết nối với cơ sở dữ liệu, kết nối các thư mục …

Thư mục core là thư mục chứa các file cơ bản và tổng quát nhất :

cơ sở dữ liệu.Tại đây sẽ khai báo tất cả các bảng và các field ,khóachính… trong cơ sở dữ liệu

tên site.url

BaseBlock.php, BaseDb.php… các file này gồm những hàm được viếttổng quát nhất.File BaseDb.php dùng để viết các hàm insert, update, delete

và select tác động trực tiếp vào Database

Trong thư mục Action Nơi đặt các file thực hiện chức năng controller trongMVC ( điều hướng và xử lý yêu cầu )

Trong thư mục logic chứa các file thực hiện chức năng model trong MVC, cụthể ở đây có thể là các file giúp bạn thao tác với cơ sở dữ liệu theo yêu cầu từcontroller

Trong thư mục db sẽ truy xuất dữ liệu vào trong databse

Trong thư mục views chứa các file thực hiện tác vụ view trong mô hình MVC,

cứ tạm xem nó là nơi chứa file giao diện cho ứng dụng Tại file này nó sẽ hiểnthị dữ liệu ra giao diện người dùng

Ngoài ra còn có các thư mục khác như image, upload ,css, js…

Tóm lại, trong MVC controler là phần kết nối điều khiển truy suất giữu view và

Trang 22

model View để hiển thị định dạng ra browser còn Model đóng vai trò là người quản lý

dữ liệu(truy suất hay cập nhật dữ liệu phải qua model)

2.5.5.2 Lợi ích khi sử dụng simple framework MVC

Việc phát triển sử dụng simple frameworks MVC cho nhiều lý do khác nhau,nhưng một số lý do cơ bản nhất và dễ hiểu nhất là tiết kiệm thời gian phát triển ứngdụng web PHP Dùng lại mã qua các dự án tương tự sẽ tiết kiệm được rất nhiều cácnhà phát triển một số lượng đáng kể về thời gian và nỗ lực trong dự án.simpleFrameworks MVC cung cấp mô-đun trước được xây dựng để thực hiện nhiệm vụ tẻnhạt mã hóa, do đó, các nhà phát triển có thể dành nhiều thời gian của họ vào việc pháttriển các ứng dụng thực tế hơn là tái xây dựng nền tảng với nhau và mỗi dự án

Khi làm việc trên một dự án có giới hạn về thời gian, sử dụng simpleframeworks MVC có vẻ như là một giải pháp tối ưu nhất nhằm đẩy nhanh quá trìnhviết mã Vì vậy, nếu bạn đang trong thời gian khủng hoảng và cấp bách nhất của dự ánđòi hỏi gấp rút về thời gian, PHP frameworks lợi thế sẵn có bạn có thể sử dụng bất kỳlúc nào bạn muốn Một ví dụ khác, nên xem xét là khi bạn làm việc trên một dự ánkiếm khá nhiều tiền… và giúp công việc trôi chảy kinh doanh phát đạt hơn

Nói tóm lại, sự sẵn có của simple frameworks MVC một điều tuyệt vời Bạnthậm chí có thể tạo riêng cho bạn, mặc dù các nhà phát triển nhiều bầu chọn từ bấtframeworks nổi tiếng nhất do sự phổ biến của chúng, hỗ trợ rộng lớn, và các diễnđàn/cộng đồng cho phép bạn tương tác với các nhà phát triển khác, những người sửdụng cùng một frameworks Lưu ý, bạn nên luôn luôn kiểm tra dự án đầu tiên của bạn

để quyết định xem bạn có nên sử dụng một frameworks hay không Một số câu hỏi bạnnên hỏi bản thân bạn là: nó sẽ giúp bạn tiết kiệm, và bất kỳ ai khác có thể sử dụng nó,thời gian và công sức? Ứng dụng sẽ hoạt động tốt hơn? Nó sẽ cải thiện sự ổn định?Nếu bạn có thể có câu trả lời bất kỳ câu hỏi nào, một simple frameworks MVC có thể

là câu trả lời đúng cho rằng dự án cụ thể

Trang 23

CHƯƠNG 3: Phân tích thiết kế hệ thống3.1 Khảo sát hệ thống

3.1.1 Xác định các yêu cầu hệ thống

3.1.1.1 Đối với người duyệt web

Website đảm bảo các yêu cầu sau:

3.1.1.2 Đối với người quản trị web

Để có thể thực hiện những tác vụ của người quản trị, hệ thống sẽ yêu cầu ngườiquản lý đăng nhập vào hệ thống Sau khi đăng nhập website cung cấp các chức năng:

không phù hợp

hay xóa bỏ quyền truy xuất

Trang 24

• Thay đổi mật khẩu khi cần thiết để đảm bảo tính bảo mật và an toàn choWebsite.

3.1.2 Mô tả chi tiết chức năng với từng đối tượng sử dụng hệ thống

3.1.2.1 Đối với người duyệt web

Dữ liệu

Dữ liệu

Trang 25

• Tìm kiếm tin tức

Dữ liệu

viết.

Dữ liệu

Trang 26

3.1.2.2 Đối với quản trị web

tránh tình trạng hệ thống bị thay đổi và phá hủy.

Dữ liệu

tên hay mật khẩu.

Trang 27

Mục đích Cho người quản lý thấy danh sách tin

Thông tin cần hiển thị

Hiển thị thông tin

Dữ liệu

vào

Đăng nhập hệ thống với tài khoản admin.

Thông tin cần thêm.

Thêm thông tin vào cơ sở dữ liệu

phạm.Hiển thị thông tin

Trang 28

Mục đích Thay đổi thông tin vào cơ sở dữ liệu.

Dữ liệu

vào

Đăng nhập hệ thống với tài khoản admin.

Chọn trường muốn sửa.

Lưu lại dữ liệu nhập vào.

phạm.Hiển thị thông tin vừa thêm.Hiển thị thông tin đã sửa

+Đăng nhập hệ thống với tài khoản admin.

+Thông tin cần xóa

+ Xóa tin theo id cần

phạm.Không hiển thị thông tin vừa xóa

3.2 THIẾT KẾ HỆ THỐNG

3.2.1 Mô hình phân cấp chức năng

Trang 29

3.2.1.1 Đối với người duyệt web

3.2.1.2 Đối với người quản trị web

Trang 30

3.2.2 Mô hình luồng dữ liệu.

Hiển thị tin

Trang 31

• Mức 1

Trang 32

Chức năng admin

Ngày đăng: 31/03/2015, 09:59

HÌNH ẢNH LIÊN QUAN

Hình bên dưới là kết quả khi test enviroment trên localhost: - Xây dựng Cổng thông tin ẩm thực Hà Thành
Hình b ên dưới là kết quả khi test enviroment trên localhost: (Trang 49)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w