BÁO CÁO THỰC TẬP ;XÂY DỰNG WEBSITE TIN TỨC với ngôn ngữ ASP.NET
Trang 1KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO THỰC TẬP TỐT NGHIỆP
NGÀNH CÔNG NGHỆ THÔNG TIN
KHOÁ 2006 – 2009 ĐẠI HỌC LIÊN THÔNG XÂY DỰNG WEBSITE TIN TỨC
Giáo viên hướng dẫn: NGUYỄN HỮU ĐÔNG
Nhóm sinh viên thực hiện:
CAO THỊ NGỌC – TK4LT
ĐỖ THỊ HẢI YẾN – TK4LT
Năm 2008
Trang 2NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Hưng Yên, ngày… tháng…….năm 2009
Giáo viên hướng dẫn
Nguyễn Hữu Đông
Trang 3I KHẢO SÁT HỆ THỐNG.
1 Tổng quan ngôn ngữ ASP.NET
a Giới thiệu ngôn ngữ ASP.NET
Hiện tại ASP 3.0 đã và đang trở thành kịch bản được nhiều người sử dụng để thiết
kế ứng dụng thương mại điện tử dưới nhiều hình thức khác nhau Chúng được sự hộ trợmạnh của ngôn ngữ lập trình C#, VB.NET… và cơ sở dữ liệu SQL Server 2005 cùng với
sự ra đời của công nghệ COM và DCOM, ứng dụng trở nên hoàn hảo và ưu việt hơntrong quá trình trao đổi thông tin trên mạng Internet và Intranet
Tuy nhiên, Microsoft đã và đang nổ lực cho một công nghệ Web xử lý phía máychủ hoàn toàn mới đó là ASP.NET độc lập với mọi trình duyệt Điều này có nghĩa làtrình duyệt không cần phải cài đặt bất kỳ công cụ hỗ trợ nào để duyệt trang Web dạngASP.NET(.aspx) Với kỹ thuật cho phép mọi thực thi đều nằm trên trình chủ (Server), cónghĩa là trình duyệt xử lý nhiều vấn đề cùng một lúc cho nhiều người dùng, chính vì vậyđòi hỏi cấu hình máy chủ có cấu hình mạnh và đòi hỏi băng thông có khả năng truyền dữliệu với khối lượng lớn và tốc độ truy cập nhanh
ASP.NET được thiết kế tương thích với các phiên bản ASP trước đó Bạn có thểtriển khai ứng dụng phát triển bằng ASP.NET chung với ứng dụng phát triển bằng ASPtrên cùng một máy chủ mà không cần thay đổi cấu hình của ứng dụng ASP
Những ngôn ngữ được dùng để viết ASP.NET là VBScript, Jscript, C# Tùy thuộcvào khai báo chỉ mục trong đối tượng chỉ dẫn đầu trang ASP.NET, bạn có thể chỉ rõngôn ngữ lập trình bạn sử dụng để xây dựng trang ASP.NET
Công nghệ ASP.NET sẽ hướng các lập trình viên Web vào quỹ đạo của chúngbằng các lý do sau :
- Độc lập ngôn ngữ cho phép bạn không biên dịch ngôn ngữ, thực hiện tối ưu cácngôn ngữ kết hợp
- Dễ phát triển: ASP.NET cho phép bạn khai báo và viết mã và đơn giản hóa vấnđề
- Tách mã và nội dung ra hai phần khác nhau: Trong mở Web form bạn có thểkhai báo một số thủ tục trên tập tin với các tên mở rộng
Trang 4- Tính mềm dẻo và khả năng nâng cấp: Cho phép chúng ta quản lý trạng thái củacác Sesion và tạo form trên một ứng dụng sử dụng hệ thống Server.
- Hỗ trợ nhiều trình khách có thể tự động nhận dạng trình khách để hiện thị chophù hợp
- Thay vì sử dụng mô hình DLL, COM, DCOM trước đây, trong trường hợp ứngdụng sử dụng công nghệ ASP.NET bạn có thể sử dụng dịch vụ tương tự có tên là WebServices
b Ưu điểm của ASP.NET
ASP.NET có nhiều ưu điểm hơn các nền tảng khác khi dùng nó để tạo ứng dụngWeb Có thể phần lớn những ưu điểm quan trọng của nó đi kèm với các máy chủWindows và các công cụ lập trình Windows Ứng dụng web được tạo bởi ASP.NETđược tạo ra, bắt lỗi và triển khai rất dễ dàng thông qua các tác vụ có thể thực thi trọnvẹn trong một môi trường phát triển duy nhất - Visual Studio NET
Với những nhà phát triển ứng dụng Web, ASP.NET bộc lộ những ưu điểm sau đây :
- Những phần thực thi được của ứng dụng Web được biên dịch, vì vậy chúng thựcthi nhanh hơn là các kịch bản thông dịch
- Các cập nhập ngay lập tức giúp cho việc triển khai các ứng dụng Web mà khôngphải khởi động lại máy chủ
- Truy cập tới NET Framework, có thể đơn giản hóa nhiều khía cạnh trong lậptrình Windows
- Sử dụng nhiều những hiểu biết về ngôn ngữ lập trình C#, VB, vốn đã được tăngcường để hỗ trợ lập trình hướng đối tượng
- Giới thiệu ngôn ngữ lập trình mới mà nó cung cấp khả năng an toàn kiểu, hướngđối tượng, so với ngôn ngữ lập trình C
- Tự động quản lý trạng thái để điều khiển trang Web (được gọi là ServerControls) vì vậy chúng có gì đó giống với các Windows Controls
- Các tính năng bảo mật được xây dựng sẵn thông qua máy chủ Windows hoặcthông qua các phương thực xác nhận/phân quyền khác
Trang 5- Tích hợp chặt chẽ với ADO.NET để cung cấp các truy xuất CSDL và các công
cụ thiết kế CSDL trực quan trong bộ VS.NET
- Hỗ trợ đầy đủ XML, CSS và các chuẩn Web đã được thiết lập hoặc mới khác
- Các tính năng sẵn có để đệm các trang web thường xuyên được yêu cầu trênmáy chủ, các nội dung bản địa hóa cho các ngôn ngữ và trao đổi, nhận ra khả năng tươngthích trình duyệt
2 Khảo sát hiện trạng Website Tin tức
a Mục đích, yêu cầu của trang web
Sau khi được học và tìm hiểu về ngôn ngữ ASP.NET, bằng khả năng thực tế cóđược, nhóm em đã xây dựng Website tin tức, đây là trang web sẽ giới thiệu những tin tứcmới hằng ngày
* Qua nghiên cứu tìm hiểu về các website có trên mạng như
http://www.dantri.com.vn, http://www.thegioitin.com, http://www.24h.com.vn,
http://www.vietbao.com, http://www.vnexpress.net nhóm em đã rút ra được một số nhận xét sau:
- Đối với trang Dantri.com.vn thì có một số đặc điểm sau:
Thông tin đa dạng từ nhiều lĩnh vực như văn hoá, xã hội, sức khoẻ,thể thao, địên ảnh, giải trí… ở trong và ngoài nước
Các thông tin được cập nhật liên tục, cho phép chúng ta xem theochủ đề, theo ngày tháng trước đấy…
Màu sắc hài hoà, các chức năng rõ ràng dễ sử dụng…
Bên cạnh đó cũng có những bài viết, những tin tức tồn tại rất lâungày
- Đối với trang vnexpress.net:
Giao diện không chứa đầy các hình ảnh và bài viết như trangDantri, nhưng có các đầy đủ các Listbox để đọc giả lựa chọn
Hình ảnh không đẹp mắt như trang Dân trí
* Qua phỏng vấn một số độc giả hay tham gia vào các trang tin tức, đa sốđộc giả khi muốn xem tin tức nào đấy thường vào trang Dân trí Vì họ có thể tìm kiếmthông tin nhanh chóng, có hình ảnh minh họa, thông tin đa chủng loại…
Trang 6* Qua Khảo sát và tham khảo ý kiến bạn đọc, Nhóm chứng Em quyết định sẽxây dựng Một Website tin tức tựa trang Dân trí của Việt Nam.
b Yêu cầu của hệ thống.
- Nguồn thông tin đa dạng và sống động
- Giao diện trang web thân thiện, dễ nhìn, dễ sử dụng, màu sắc hài hòa
- Thông tin được cập nhật và sửa đổi thường xuyên
- Cho phép tìm kiếm một cách nhanh chóng
- An toàn bảo mật dữ liệu
3.Tổng kết
Từ yêu cầu của hệ thống nhóm em đưa ra một số yêu cầu chi tiết về website như sau:
- Hiển thị các danh mục
- Hiển thị chi tiết về thông tin trong danh mục
- Hiển thị kết quả của việc tìm kiếm, đăng ký, đăng nhập
- Hiển thị các thông tin mới diễn ra hằng ngày
a.Chức năng User
Cho phép đăng ký làm thành viên
Cho phép sửa đổi
Cho phép xem tin tức, tìm kiếm thông tin
Cho phép Post các bài viết
b Đối với người quản trị
Quản lý các User: xóa, sửa, nhập thêm User, Admin
Cập nhật mới các thông tin liên quan, sửa thông tin, xóa thông tin
Kiểm tra, chỉnh sửa các bài Post lên của User và sau đó đăng bài
Hiển thị thông tin lên nhóm tin, chuyên mục
Trang 7c Yêu cầu của hệ thống mới
- Hình thức thông tin đa dạng và sống động
- Giao diên thân thiện, dễ nhìn, màu sắc không đối lập
- Cung cấp thông tin và phát triển hoạt động liên tục, không ngừng
- Thông tin được cập nhật và sửa đổi thường xuyên
- Có khả năng cập nhật, sửa, xoá
- Có khả năng tra và tìm kiếm một cách nhanh chóng
- An toàn dữ liệu
Trang 8II PHÂN TÍCH HỆ THỐNG.
1 Yêu cầu chi tiết về website
- Hiển thị các danh mục
- Hiển thị chi tiết về thông tin có trong danh mục
- Hiện thị kết quả của việc tìm kiếm, đăng ký , đăng nhập
- Hiện thị được các thông tin mới diễn ra hàng ngày
a Đối với người truy cập Website với chức năng User
- Cho phép đăng ký thành viên
- Cho phép xem tin tức, tìm kiếm thông tin
- Cho phép Post các bài viết
b Đối với người quản trị
- Quản lý các user: xoá, sửa, nhập thêm User, Admin
- Cập nhật mới các thông tin liên quan, sửa thông tin , xoá thông tin
- Kiểm tra, chỉnh sửa các bài Post lên của user và sau đó đăng bài
- Hiển thị thông tin lên theo nhóm tin, chuyên mục
Trang 92 Biểu đồ phân cấp chức năng, biểu đồ luồng dữ liệu.
a Mô tả các chức năng.
Danh sách các chức năng yêu cầu của Website tin tức:
* Đầu ra: Hiển thị thông tin
- Hiện thị thông tin theo chủ đề
- Thông tin hiển thị theo khuôn có sẵn
Ngoài ra còn có chức năng:
- Hiện thị thông tin tìm kiếm
* Đầu vào: Quản lý thông tin
- Cập nhật thông tin ( Sửa, xóa, thêm mới) theo chủ đề
- Nhập thông tin và quản lý thông tin theo khuôn có sẵn
- Thống kê tin tức, liên hệ, phân phát quyền quản trị
Phân tích chức năng:
* Khuôn thông tin:
- Mã thông tin: Là khóa, số ký tự từ 5 – 10 Đảm bảo tính duy nhất của thông tin
- Tiêu đề bản tin: Không được để rỗng, Số ký tự từ 50 – 100 Mục tiêu là hiện thịtiêu đề và thể hiện nội dung một phần bản tin
- Nội dung chính: Không được để rỗng Số ký tự từ 50 – 500 Thể hiện nội dungcăn bản trong bản tin khi người đọc không có khả năng đọc toàn bộ bản tin vẫnhiểu được phần cốt lõi của bản tin
- Trường ảnh: Có thể được để rỗng Thể hiện hình ảnh minh họa của bản tin (nếucó)
- Trường tác giả: Hiển thị tên tác giả viết bản tin
- Trường người đưa bản tin: Hiển thị thông tin của người đưa bản tin lên Website
- Ngày đưa bản tin Nó phục vụ cho chủ đề nào
* Nhập nội dung theo khuôn:
Trang 10- Thiết kế nhập: Mã thông tin ký tự hay số trước Số ký tự từ 5 – 10 Có thể nhập
tự động hay bằng tay Đưa ra cảnh báo nếu nhập ít hơn hoặc nhiều hơn số ký tự quyđịnh
- Tiêu đề bản tin: Nhập toàn bộ ký tự số, ký tự đặc biệt máy sẽ đưa ra cảnh báo
- Nội dung chính: Nhập rỗng sẽ đưa ra cảnh báo
- Trường ảnh: Nếu để rỗng sẽ có thông bảo hỏi “ Bạn có muốn để rỗng haykhông?”
* Update thông tin:
Cho phép sửa xóa các thành phần phụ trong cơ sở dữ liệu mà không cho sưa đổi trườngkhóa
* Xóa thông tin: Có thể xóa theo chủ đề hoặc một nhóm chủ đề.
- Xóa theo chủ đề (Xóa rất nhiều thông tin)
- Xóa theo bản tin (Thông tin về một vấn đề gì đó)
- Xóa một bản tin
- Xóa những bản tin có chứa cụm nội dung không lành mạnh…
* Thống kê thông tin:
- Số lượng bản tin trong Website
- Số lượng bản tin trong từng chủ đề
- Số lượng bản tin của cùng một tác giả
- Số lượng bản tin trong cùng một ngày
- Số lượng bản tin cùng nói về một vấn đề nào đó
* Liên hệ: (Liên hệ của người đọc vào Website)
Người đọc phản ánh qua Website cho phép họ gửi nội dung vào website hoặc gửivào cơ sở dữ liệu
Cho phép người đọc nhập thông tin cá nhân: Tên, tuổi, Email để khảng định chínhxác người đó, số điện thoại di động
Trang 11Quy định nội dung phải tránh những cụm từ không lành mạnh hoặc những cụm từtheo quy định của Website.
Giới hạn số từ ngữ đưa lên Nếu nói nhiều về một vấn đề gì đó, người quản trị đưavào CSDL là nội dung bi cấm Khi người đọc gõ nội dung đó sẽ có thông báo: Nội dungnày bị cấm
* Thêm người quản trị
* Chức năng hiện thị thông tin
Giao diện đẹp, thích hợp với loại thông tin đăng tải
Cách hiện thị thông tin theo Dân trí
Trang 12b Biểu đồ phân cấp chức năng
- Hệ thống WebSite Tin tức.
Hệ thống WebSiteTin tức
Sức mạnh số
Giáo dục - KHTrang chủ
Sự kiện trong ngàyThể thao
Nhịp sống trẻ
Tìm kiếmChuyện lạGiải trí
Trang 13- Người quản trị: Admin.
Chức năng login: Đảm bảo tính bảo mật cho toàn bộ hệ thồng chỉ có người cóquyền Amin mới tham gia vào chức năng này như người quản trị toàn bộ hệ thống(Nhập, sửa, xóa, xem bài viết thành viên, quản lí tài khoản người sử dụng, tìm kiếmnhanh)
- Thành viên WebSite: Dành cho User khi đăng nhập vào (Xem tin tức, gửi bài
Trang 14c Biểu đồ luồng dữ liệu
- Biểu đồ luồng dữ liệu mức khung cảnh
Qua biểu đồ mức khung cảnh ta thấy: User gửi yêu cầu đến quản lý, Admin làngười trực tiếp quản lý trang Web sẽ xử lý yêu cầu đó và cấp phép có hoặc không đốivới User
- Biểu đồ luồng dữ liệu mức đỉnh.
Sửa đổi tin
Tìm kiếm
User
Phân quyền
Trang chủ
Thông tin cập nhật
Thông tin cập nhật Thông tin cập nhật
Đăng nhập HT.
Trang 15- Biểu đồ luồng dữ liệu mức dưới đỉnh.
User
Kết quảKho dữ liệu
Thông tin
Lưu
Trang 16- Người dùng là thành viên thì có thể xem thông tin tại Website chính vì thế hệthống login sẽ thực hiện việc kiểm tra đăng nhập cũng như đăng ký thành viên cho phépUser có thể là thành viên của Website Các thông tin thành viên được lưu trữ trongCSDL Database.
Thông tin chấp nhân/không
Yêu cầu đăng nhập hệ thống
Đăng ký/
đăng nhập
Database
User
Kết quả
Trang 17III THIẾT KẾ CƠ SỞ DỮ LIỆU
1 Thiết kế CSDL.
- Cơ sở dữ liệu nhằm lưu giữ thông tin cần thiết cho chương trình Với mỗi một
cơ sở dữ liệu sẽ thể hiện rõ thông tin tối thiểu cần có của việc quản lý
- Để lưu trữ CSDL và thực hiện các thao tác, cũng như thuật toán khác nhau vớitrang web thì cần phải tìm những cấu trúc dữ liệu thích hợp để mô tả quá trình hoạt độngcủa trang web
- Để tạo một cơ sở dữ liệu, trước hết ta phải xác định những thông tin gì cần thiết
- Sau đó ta thiết kế, tạo các bảng chứa các trường định nghĩa kiểu dữ liệu sẽ có Sau khi tạo ra cấu trúc cơ sở dữ liệu, cơ sở dữ liệu có thể chứa dữ liệu dưới dạng bản ghi
3 Xác định các thực thể.
Bước đầu trong phân tích thiết kế cơ sở dữ liệu là phân tích các yêu cầu của dữliệu, tức là ta phải xác định được các thông tin cần quản lý để xác đinh ra các đối tượngcần thiết lưu trữ dữ liệu vào bảng
- Admin: Đây là thực thể xác định quyền điều hành và quản trị hệ thống Người
quản trị hệ thống có quyền hạn cao nhất trong hệ thống, thông tin về Admin được cungcấp bởi Username, Password, họ tên, mã nhóm, email
- User: Đây là người sử dụng đăng nhập vào hệ thống để xem tin tức và gửi bài
viết Thông tin về User gồm Username, password, họ tên, mã nhóm, email
- Loại thông tin: mỗi loại thông tin có một mã loại thông tin để phân biệt với cácloại thông tin khác.Cùng với mã loại thông tin còn có tiêu đề của loại thông tin
Trang 18- Bản tin: mỗi bản tin có một mã bản tin để phân biệt với các bản tin khác Mộtbản tin gồm các thông tin: title, shortcut, body, picture, creatdate, tags.
Xuất phát từ quá trình xác định các thực thể như trên ta có thể xây dựng mộtCSDL có tên là : Database.mdf và CSDL gồm có các bảng sau:
a Bảng Quyền:
Trong bảng này MaNhom là khóa chính
b Bảng Nhóm:
Trong bảng này UserName là khóa chính
c Bảng Tb_DetailNews:
Title_News nvarchar 500 Tiêu đề bản tin
Trang 19Tên trường Kiểu Độ rộng Ghi chú
Trong bảng này Group_ID là khóa chính
Mô hình quan hệ Relation Ship của CSDL:
Trang 20IV ĐẶC TẢ GIAO DIỆN
* Các chức năng trên trên trang chủ gồm:
- Banner_Top: Hiển thị hình ảnh Banner chính của trang web
- Banner_Tieude: Hiển thị thông tin về nhóm sinh viên thực hiện và có 2 chứcnăng Đăng nhập vào Website và Đăng ký thành viên của Website
- Menu_Left: Hệ thống Menu trái gồm có 8 chức năng hiển thị toàn bộ nhóm tintức của trang Web: Sự kiện trong ngày, thể thao, giáo dục - khuyên học…
- Body: Hiển thị chi tiết các bản tin nổi bật về các mặt của đời sống xã hội
- Menu_Right: Hiển thị tiêu đề chuyên mục, sự kiện diễn ra trong ngày
- Menu_Bottom: Hiển thị nhóm SV thực hiện đề tài
Barner
Barner tiêu đề
Menu trái Tên chủ đề được chọn ở Menu trái Menu phải
Tên tiêu đềNội dung chính
Tên tiêu đềNội dung chính
Tên tiêu đềNội dung chính
Ảnh
Ảnh
Ảnh
Đăng nhập Đăng ký
Trang 21b Trang nhóm tin tức: (Nhomtintuc.aspx)
- Trang nhóm tin tức hiển thị chi tiết các bài viết về từng chuyên mục
+ Trang chủ: Nhóm tin tức này hiển thị những bài viết nổi bật về các mặt đời sống
xã hội đã diễn ra như: Sự kiện, thể thao, giáo dục…
+ Sự kiện trong ngày: Hiển thị những bài viết đã diễn ra trong ngày
+ Thể thao: Nhóm tin tức này hiển thị những bài viết về chuyên mục thể thaotrong nước và quốc tế
+ Giáo dục khuyến học: Là những bài viết về giáo dục, học tập
+ Sức mạnh số: Những bài viết về công nghệ mới
+ Sức khỏe: Những bài viết về sức khỏe, cách chăm sóc sức khỏe và làm đẹp.+ Giải trí: Những mẩu chuyện vui thư giãn
+ Chuyện lạ: Những bài viết về chuyện là trên thế giới
c Trang đăng nhập (Dang_Nhap.aspx)
- Khi người dùng có tài khoản là User thì đăng nhập vào sẽ có thêm chức nănggửi bài viết
- Khi người dùng có tài khoản là Admin thì đăng nhập vào sẽ có thể xem, sửa,xóa, đăng bài viết, quản lý các thành viên, xem, sửa, xóa bài viết của các thành viên