lý thông tin cá nhân, quản lý quảng cáo, quản lý ngời dùng,với cách bố trí đơngiản, dễ hiểu, dễ sử dụng và hiển thị toàn bộ các nhóm tin… Mặc dù đã có nhiều cố gắng, đã tìm hiểu, kết hợp
Trang 1Trờng Đại học vinh
Khoa Cntt
-đồ án tốt nghiệp Xây dựng WEBSITE TIN nhanh 24/7
GV hớng dẫn : THS vũ văn nam
SV THựC HIệN : phan thanh xuân Lớp : 47E - CNTT
Trang 2Trớc hết em xin gửi lời cảm ơn chân thành sâu sắc tới quý thầy cô giáotrong trờng Đại học Vinh, quý thầy cô trong khoa Công nghệ Thông tin và quý
thầy cô trong tổ Kỹ Thuật Máy Tính đã giảng dạy, truyền đạt cho em những
kiến thức, kinh nghiệm quý báu trong thời gian qua
Đặc biệt em xin gửi lời cảm ơn tới ThS Vũ Văn Nam đã tận tình giúp
đỡ, trực tiếp chỉ bảo em trong quá trình làm đồ án tốt nghiệp Trong thời gian
đợc thầy huớng dẫn, em không những tiếp thu thêm nhiều kiến thức bổ ích màcòn học tập đợc tinh thần làm việc, thái độ nghiên cứu khoa học cách nghiêmtúc, hiệu quả Đây là những điều rất cần thiết cho em trong quá trình học tập
Một lần nữa em xin chân thành cảm ơn tất cả mọi ngời đã quan tâmgiúp đỡ em
SV: Phan Thanh Xuân Lớp 47E - Khoa CNTT Trờng Đại học Vinh
Mục lục Lời cảm ơn
Lời nói đầu 3 Phần I: Tổng quan đề tài, ngôn ngữ PHP và hệ quản trị cơ sở dữ liệu
Trang 31.2.2 Hệ quản trị cơ sở dữ liệu MySQL……… …… 8
Phần II: Khảo sát phân tích và thiết kế hệ thống 2.1 Biểu đồ phân cấp chức năng…… 11
2.2 Biểu đồ luồng dữ liệu .12
2.2.1 Mức khung cảnh 12
2.2.2 Mức đỉnh 13
2.2.3 Mức dới đỉnh 14
2.3 Sơ đồ hệ thống file 15
2.4 Thiết kế cơ sở dữ liệu 16
2.4.1 Các thực thể ….17
2.4.2 Mô hình thực thể liên kêt …19
Phần III: Website Tin nhanh 24/7 3.1 Giao diện bên ngoài 20
3.2 Đặc tả một số module chính 26
Kết luận … 36
Tài liệu tham khảo……….38
Lời nói đầu
Công Nghệ Thông tin là một ngành mới xuất hiện trong vài thập niên trở lại đây,nhng nó đã khẳng định đợc u thế vợt trội trong mọi lĩnh vực Do đó việc ứng dụng công nghệ thông tin rất rộng rãi ở nhiều nơi, ở hầu hết trong các ngành nghề: Trao đổi giáo dục, quốc phòng, kinh tế, văn hóa Bởi vì nó đã mang lại nhiều hiệu quả, sự chính xác, nhanh chóng cho các hoạt động của con ngời
Ngôn ngữ PHP đợc xem là ngôn ngữ lập trình vạn năng trong việc thiết kế
Trang 4lý thông tin cá nhân, quản lý quảng cáo, quản lý ngời dùng,với cách bố trí đơngiản, dễ hiểu, dễ sử dụng và hiển thị toàn bộ các nhóm tin…
Mặc dù đã có nhiều cố gắng, đã tìm hiểu, kết hợp nghiên cứu trên các tàiliệu, đồng thời nhờ sự giúp đỡ của quý thầy cô, bạn bè Nhng do thời gian cóhạn, kinh nghiệm còn ít, nên đề tài không tránh khỏi những thiếu sót Em rấtmong đợc sự đánh giá, góp ý xây dựng của quý thầy cô giáo và bạn bè
Cuối cùng, em xin chân thành cảm ơn sự giảng dạy, hớng dẫn và giúp đỡtận tình của ThS Vũ Văn Nam - Khoa Công Nghệ Thông Tin-Đại học Vinh
Vinh, tháng 05 năm 2011
Phần I Tổng quan đề tài, ngôn ngữ lập trình php và hệ
quản trị cơ sở dữ liệu mysql
1.1 Tổng quan đề tài.
Thế giới ngày nay có thể nói đó là thế giới của thông tin Thông tin đến
từ bất kỳ đâu, từ sách, báo, radio, tivi Ngời nào biết chọn lọc, thu nhận thôngtin, ngời đó sẽ thành công Vậy để làm thế nào tin tức thu nhận đợc vừa đầy đủnhất lại trong thời gian ngắn nhất Website tin nhanh 24/7 đợc xậy dựng dựatrên nhu cầu đó, Website đã tổ chức, phân loại, sắp xếp thông tin thông minh
để độc giả “thu nhận” tin tức một cách nhiều nhất và nhanh nhất
Phơng pháp nghiên cứu : Thờng xuyên học hỏi, trau dồi kiến thức mọi
lĩnh vực từ nhiều nguồn: Quý thầy cô, bạn bè, Sách báo, Internet, Các diễn
đàn
Sơ lợc hệ thống : Xây dựng hệ thống website tin nhanh 24/7 gồm các
chức năng sau:
Trang 5Phần quản trị hệ thống:
+ Quản lý tin: thêm tin mới, sửa và xóa các tin
+ Quản lý nhóm tin: thêm, sửa và xóa nhóm tin tức
+ Quản lý quảng cáo: thêm, sửa và xóa nhà quảng cáo
+ Quản lý ngời dùng: thêm, sửa và xóa ngời dùng Ngời dùng đợc phân quyền
1.2 Ngôn ngữ lập trình php và hệ quản trị cơ sở dữ liệu mYsql
PHP & MySQL là các công cụ phổ biến và thống trị thế giới website, mặcdầu đang chịu sự cạnh tranh của một số ngôn ngữ lập trình web khác nhngPHP vẫn thống lĩnh số một với những tính năng nổi bật và đặc biệt là khả năngthờng xuyên cập nhật với đội ngũ lập trình viên trên toàn thế giới, đặc biệt làcộng đồng mã nguồn mở
Với nhu cầu và sự cần thiết nh hiện nay thì PHP bắt đầu đợc sử dụngtrong môi trờng chuyên nghiệp và nó trở thành “PHP Hypertext Preprocessor”.Khi một trang Web muốn dùng ngôn ngữ PHP thì phải đáp ứng đợc tất cả cácquá trình xử lý thông tin trong trang Web đó, sau đó đa ra kết quả ngôn ngữHTML
1.2.1 Các đặc điểm nổi bật của PHP.
PHP 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ủ, mã nguồn mở, dùng chomụ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àotrang HTML Do đợc tối u hoá 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ẩm tơng đối ngắn
Trang 6Ngôn ngữ, các th viện, tài liệu gốc của php đợc xây dựng bởi cộng đồng
và có sự đóng góp rất lớn của Zend Inc-Công ty do các nhà phát triển cốt lõicủa php lập nên nhằm tạo ra một môi trờng chuyên nghiệp để đa php phát triển
ở quy mô doanh nghiệp
Hỗ trợ truy cập tới bất kỳ loại cơ sở dữ liệu nào ứng dụng của bạn dự
định sẽ truy cập những loại dữ liệu, dịch vụ nào? LDAP, IMAP mail server,DB2, hay XML parser hay WDDX
Bất kể bạn cần đến thứ gì thì PHP cũng sẵn sàng hỗ trợ thông qua cáchàm đợc xây dựng sẵn nó sẽ làm công việc của bạn trở nên rất dễ dàng và tiện
Trang 7giúp cho việc bổ sung số lợng lớn các hàm chức năng một cách dễ dàng Nếu
nh ngôn ngữ đã có sẵn nhiều hàm đặc thù cho công việc thì bạn sẽ đỡ tốn cônghơn cho việc lập trình của mình
> Khi trình duyệt truy cập vào một trang PHP, Server sẽ đọc nội dung filePHP lên và lọc ra đoạn mã PHP và thực thi các đoạn mã đó, lấy kết quả nhận
đợc của đoạn mã PHP thay thể vào chỗ ban đầu của chúng trong file của PHP,Server trả về kết quả cuối cùng là một trang nội dung HTML về cho trìnhduyệt
Máy khách Hàng
Máy chủ Web
PHP
Trang 8khăn đối với nó thì lúc nào cũng có những cộng sự chia sẻ nỗi lòng đó và giúpbạn khắc phục nhằm đem lại niềm vui cho bạn
1.2.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 trên thếgiới (theo www.mysql.com) 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 MySQL miễn phí hoàn toàn nên bạn có thể tảiMySQL về từ trang chủ MySQL có nhiều phiên bản cho các hệ điều hànhkhác nhau: phiên bản Win32 cho các các hệ điều hành dòng Windows, Linux,Mac OSX… MySQL là một trong những ví dụ cơ bản nhất 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 Tuy nhiênMySQL chỉ phù hợp với các cơ sở dữ liệu nhỏ và trung bình Nếu dùng chodoanh nghiệp lớn thì phải dùng SQL Sever (của Microsoft) hoặc Oracle
Mục đích sử dụng cơ sở dữ liệu bao gồm các chức năng nh: Lu trữ(storage), truy cập(accessibility), tổ chức(organization) và xử lí(manipulaition)
- Lu trữ: lu trữ trên đĩa và có thể chuyển đổi dữ liệu từ cơ sở dữ liệu này
sang cơ sở dữ liệu khác, nếu bạn sử dụng cho qui mô nhỏ, bạn có thể chọn cơ
sở sữ liệu nhỏ nh: Microsoft Exel, Microsoft Access, MySQL, MicrosoftVisual FoxPro,…Nếu ứng dụng có quy mô lớn, bạn có thể chọn cơ sở dữ liệu
có quy mô lớn nh: Oracle, SQL Sever,…
- Truy cập: Truy cập dữ liệu phụ thuộc vào mục đích và yêu cầu của ngời
sử dụng, ở mức độ mang tính cục bộ, truy cập cơ sở dữ liệu ngay trong cơ sởvới nhau Nhằm trao đổi ngay bên trong chính nó, nhng do mục đích và yêucầu ngời dùng vợt ra ngoài cơ sở dữ liệu, nên bạn cần có các phơng thức truycập dữ liệu giữa các cơ sở dữ liệu với nhau nh: Microsoft – Access với SQL
Trang 9tiêu chuẩn của hệ thống cơ sở dữ liệu nhằm tăng tính tối u khi truy cập và xửlý.
- Xử lý: Tuỳ vào nhu cầu tính toán và truy vấn cơ sở dữ liệu với các mục
đích khác nhau, cần phải sử dụng các phát biểu truy vấn cùng các phép toán,phát biểu cùng các cơ sở dữ liệu để xuất ra các yêu cầu Để thao tác hay xử lýdữ liệu bên trong chính cơ sở dữ liệu ta sử dụng các ngôn ngữ lập trình nh:PHP, C++, Java Visua Basic…
- Nhanh và mạnh: MySQL không có đầy đủ những cơ sở vật chất cho một
hệ quản trị cơ sở dữ liệu chính tông, nhng đối với công việc thờng nhật củaphần đông mọi ngời thì nó cung cấp cũng khá nhiều thứ Nếu công việc củabạn là lu trữ dữ liệu trên Website hoặc làm một trang Thơng mại Điện tử cỡvừa, thì MySQL có đủ những thứ bạn cần Đối với những CSDL cỡ trung bìnhthì MySQL hỗ trợ tuyệt vời về tốc độ Các nhà phát triển MySQL rất tự hào vềtốc độ sản phẩm của họ Với các ứng dụng thì bạn khó có thể kiếm đợc một
Hệ Quản trị cơ sở dữ liệu nào đạt đợc tốc độ nhanh hơn nó
- Cải tiến liên tục: MySQL đợc cải thiện liên tục với một tần số không
ngờ Các nhà phát triển cập nhật nó thờng xuyên, ngoài ra còn bổ sung cáctính năng rất ấn tợng cho nó mọi lúc mọi nơi Hiện tại, MySQL đã đợc bổ sungthêm hỗ trợ transaction Nh vậy là MySQL đã thực sự trở thành một Hệ QuảnTrị cơ sở dữ liệu chuyên nghiệp
- Miễn phí: Về vấn đề bản quyền khi cài đặt lên máy vi tính những phần
mềm nh Linux, Apache, PHP vì tất cả đều miễn phí Mặc dù MySQL đợc phổbiến rất nhiều nhng nó vẫn có những đối thủ đáng gờm đang cạnh tranh với nó.Những đối thủ của nó có thể trội hơn về một phơng diện đặc thù nào đó
Trang 10Phần iI Khảo sát phân tích và thiết kế hệ thống2.1 Biều đồ phân cấp chức năng.
Trang 122.2 Biểu đồ luồng dữ liệu.
2.2 . 1 Biểu đồ mức khung cảnh.
WEBSITE
Quản lý NHóm tin
Quản lý ng ời dùng Quản lý quảng cáo LIÊN Hệ, GóP ý
Trang 13Th«ng tin qu¶ng c¸o
Th«ng tin ng êi dïng
Th«ng tin t×m kiÕm
Th«ng tin nhãm tin Ph¶n håi
Danh môc tin Th«ng tin liªn hÖ, gãp ý
Th«ng tin cña tin
Trang 14Th«ng tin liªn hÖ, gãp ý
Ng êi dïng Danh môc tin
Th«ng tin cña tin
Th«ng tin qu¶ng c¸o
Trang 15LI£N HÖ GãP ý
§éC GI¶
C¬ së d÷ liÖu
Ph¶n håi
Trang 16Th«ng tin cña tin Th«ng tin ng êi dïng
Th«ng tin qu¶ng c¸o
Qu¶n lý nhãm tin
Qu¶n lý
qu¶ng c¸o
Qu¶n lý qu¶ng c¸o
Trang 172.3 Sơ đồ hệ thống file
- includes : chứa các class dùng chung và các hàm thiết lập, kết nối và xứ
lý dữ liệu
Trang 182.4.1 Các thực thể (bảng).
Field = Tên trờng(hay thuộc tính của thực thể) Đối với trờng là khóa chính (Primary key) thì đợc gạch chân ở dới
Type = Kiểu dữ liệu của trờng( Kích thớc dữ liệu của trờng)
Collation = encode dữ liệu của cột.
Attributes = có dấu, không dấu, hoặc vừa không dấu vừa có dấu Null = Cho phép ngời dùng không nhập trờng này hay không?
No = bắt buộc phải nhập
NULL = có thể nhập có thể không
Default = Giá trị mặc định cho trờng nếu không nhập.
Extra = trờng tự tăng hay không.
Thực thể Nhóm Tin :“ ” lu trữ thông tin các tin.
Thực thể Tin tức : “ ” lu trữ các tin
Trang 19Thùc thÓ Ng“ êi dïng :” lu tr÷ th«ng tin ngêi dïng.
Trang 202.4 . 2 M« h×nh thùc thÓ liªn kÕt.
Trang 21
Phần Iii Các giao diện chính của website3.1 Giao diện bên ngoài.
- ở giao diện này độc giả có thể xem tin theo nhóm tin Các tin đợc phântrang, tạo ra khung phù hợp, dễ nhìn
Trang 233.1.1 Giao diÖn trang chñ.
ë giao diÖn nµy chóng ta cã thÓ vµo hÇu hÕt tÊt c¶ c¸c danh môc: t×mkiÕm, liªn hÖ, qu¶n trÞ, menu tin tøc, xem tin chi tiÕt…
Trang 25ë giao diÖn nµy chóng ta cã thÓ vµo c¸c danh môc: t×m kiÕm, liªn hÖ,qu¶n trÞ, menu tin tøc, xem tin chi tiÕt, xem c¸c tin liªn quan…
Trang 273.1.2 Giao diÖn ngêi qu¶n trÞ website cña ngêi qu¶n trÞ
ë giao diÖn nµy ngêi qu¶n trÞ cã thÓ vµo c¸c danh môc: qu¶n lý nhãm tintøc, göi tin míi, qu¶n lý qu¶ng c¸o, qu¶n lý ngêi dïng, ra trang chñ, qu¶n lýth«ng tin c¸ nh©n…
Trang 28Form đăng nhập dành cho ngời quản trị, ngời dùng đăng nhập vào hệ quản trị Website với tài khoản và mật khẩu
Có 2 quyền dành cho ngời quản trị:
- Biên tập tin: chỉ đợc phép cập gửi tin mới, sửa đổi thông tin cá nhân
- Quản trị: có tất cả mọi quyền
Đối với mỗi quyền thì khung nhìn quản trị cũng khác nhau:
3.1.2 Giao diện ngời biên tập tin của website.
ở giao diện này ngời quản trị có thể vào các danh mục: gửi tin mới, ratrang chủ, quản lý thông tin cá nhân…
Trang 29Khung nhìn của ngời biên tập tin
3.2 Một số đặc tả một số module chính.
3.2.1 Module quản lý tin.
Cho phép ngời quản trị thêm tin mới, sửa và xóa tin hiện có Cho phépngời dùng lọc theo nhóm tin Danh mục tin đợc phân trang giúp ngời quản trị
có cái nhìn tốt hơn
Trang 30ë giao diÖn nµy ngêi qu¶n trÞ cã thÓ vµo c¸c danh môc: qu¶n lý nhãm tintøc, göi tin míi, qu¶n lý qu¶ng c¸o, qu¶n lý ngêi dïng, ra trang chñ, qu¶n lýth«ng tin c¸ nh©n…
Trang 31ë giao diÖn nµy ngêi qu¶n trÞ cã thÓ vµo c¸c danh môc: qu¶n lý nhãm tintøc, göi tin míi, qu¶n lý qu¶ng c¸o, qu¶n lý ngêi dïng, ra trang chñ, qu¶n lýth«ng tin c¸ nh©n…
Trang 32Form söa hoÆc thªm míi mét tin (b)
Trang 333.2.4 Module qu¶n lý nhãm tin.
Cho phÐp ngêi qu¶n trÞ thªm míi nhãm tin, söa vµ xãa nhãm tin trªn cïng
mét form Thø tù cña nhãm tin lµ thø tù s¾p xÕp cña nhãm tin khi hiÖn lªn
Trang 34Khi xóa một nhóm tin, khi đó toàn bộ tin tức thuộc nhóm này cũng bị xóatheo.
Thông báo khi xóa một nhóm tin
3.3.5 Module quản lý quảng cáo.
Cho phép ngời quản trị thêm mới mục quảng cáo, sửa và xóa mục quảng cáotrên cùng một form Cho phép ngời quản trị tải ảnh logo lên hệ thống Quản lýnhóm tin tức, gửi tin mới, quản lý quảng cáo, quản lý ngời dùng, ra trang chủ,quản lý thông tin cá nhân
Trang 35Thông báo xóa một mục quảng cáo
3.3.6 Module liên hệ.
Cho phép độc giả gửi bài đăng, th liên hệ góp ý, đăng ký mục quảng cáo, gửi th sửa và xóa mục quảng cáo…
Trang 36Cho phép ngời quản trị thêm ngời dùng mới, sửa và xóa ngời dùng Đối với
ngời dùng đang đăng nhập, ngời dùng có thể cập nhật thông tin cá nhân của
họ, tuy nhiên họ không đợc quyền sửa đổi lại quyền của họ
Ngời dùng đợc chia thành 2 quyền:
- Biên tập tin: chỉ đợc phép thêm tin mới, sửa đổi thông tin cá nhân
- Quản trị: đợc phép quản lý toàn bộ hệ thống
Danh mục ngời dùng
Trang 37Form söa, thªm ngêi dïng
Trang 38dùng, cách bố trí đơn giản, dễ hiểu, dễ sử dụng, hiển thị toàn bộ các nhómtin… Giao diện đẹp, thân thiện và gần gũi.
- Website đã đạt đợc những yêu cầu đặt ra: cho phép độc giả tìm và duyệttin trong thời gian ngắn; cho phép ngời quản trị dễ dàng quản lý tin, ngờidùng, quảng cáo
Hớng phát triển:
Xây dựng Website có thêm các tính chất sau:
- Cho phép độc giả gửi tin, bài, bình luận, đánh giá tin bài đợc đăng Đốivới tin bài đợc đăng sẽ đợc nhuận bút
- Hoàn thiện hơn nữa việc phân loại tin
- Phân quyền chi tiết hơn để quản lý vòng đời của một tin bài
Do thời gian có hạn nên không thể tránh khỏi thiều sót, rất mong đợc sự
đóng góp, giúp đỡ của tất cả mọi ngời
Em xin chân thành cảm ơn sự giúp đỡ, đóng góp tận tình của quý thầy
cô, bạn bè đặc biệt là sự quan tâm, nhiệt tình giúp đỡ hớng dẫn của ThS.
Vũ Văn Nam và các thầy cô trong tổ Kỹ Thuật Máy Tính đã giúp em hoàn
thành đề tài này.
Tài liệu Tham khảo
1 Jay Greenspan and Brad Bulger, PHP MySQL Databasse Applycations,
M&T Book tháng 10/2009
2 Nguyễn Hữu Hoàng, Lập trình PHP và MySQL, Nhà xuất bản Cà Mau
2007
Trang 39http://www.php.net.vn
http://www.box.net
http://vietesoft.com
6 http:www.google.com.vn