Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 46 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
46
Dung lượng
2,2 MB
Nội dung
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THƠNG TIN BÁO CÁO BÀI TẬP LỚN MƠN LẬP TRÌNH WEB ĐỀ TÀI: Xây Dựng Website Tin Tức Cho Trường THPT Giảng viên hướng dẫn : Ths.Đỗ Ngọc Sơn Nhóm 4: LT CĐ ĐH-KHMT2_K5 Sinh viên thực : Đỗ Trọng An Bùi Văn Tùng Nguyễn Mạnh Thắng Nguyễn Tự Tuyền Trần Văn Truyền Hà nội, tháng 12/2012 Bảng Phân Công Công Việc TT Họ Tên Công Việc Đinh Ngọc Dũng Thiết kế trang MasterPage trang Trần Hải Đăng Ngô Văn Phương Thiết kế Database Nguyễn Minh Tuấn Thiết kế trang đăng ký đăng nhập, trang admin MỤC LỤC Trang Chương I: NHIỆM VỤ, MỤC TIÊU VÀ KHẢO SÁT BÀI TOÁN 1.1 Nhiệm vụ mục tiêu toán 1.2 Khảo sát xác lập dự án 1.2.1 Đặc điểm hệ thống quản lý 2.1.1 Phân cấp quản lý .5 1.2.1.2 Các luồng thông tin 1.2.1.3 Mơ hình hệ thống thơng tin quản lý .6 1.2.2 Yêu cầu hệ thống thông tin hệ thống quản lý 1.2.2.1 Yều cầu đơn vị 1.2.2.2 Yêu cầu người sử dụng .7 1.2.3 Các bước xây dựng hệ thống thông tin quản lý .8 1.2.4 Tổng quan hệ thống thông tin quản lý trường THPT .8 Chương II: KIẾN THỨC ÁP DỤNG 2.1 Phân tích & thiết kế hệ thống 10 2.1.1 Biểu đồ phân cấp chức (BFD - Bussiness Function Diagram) 10 2.1.1.1 Khái niệm 10 2.1.1.2 Các thành phần BFD 10 2.1.1.3 Đặc điểm biểu đồ phân cấp chức 11 2.1.1.4 Cách xây dựng BFD 12 2.1.1.5 Các bước xây dựng biểu đồ chức 12 2.1.2 Biểu đồ luồng liệu (DFD - Data Flow Diagram) 13 2.1.2.1 Khái niệm .13 2.1.2.2 Mục đích 13 2.1.2.3 Thành phần chức (DFD- Data Flow Diagram) 13 2.1.2.4 Phương pháp xây dựng biểu đồ dòng liệu (DFD) .17 2.2 Quản trị hệ thống 20 2.2.1 Danh sách người sử dụng .21 2.2.2 Nhật ký kiện .21 2.2.3 Kiểm tra gỡ rối ứng dụng 21 2.2.4 Kết nhập kết xuất sở liệu 21 2.2.5 Phân quyền người sử dụng (Role) 21 2.3 Ngơn ngữ lập trình 22 2.3.1 ASP.NET 22 2.3.2 Các điều khiển Asp.net .23 2.3.3 Điều khiển kiện server 23 2.3.4 Trang asp.net 23 2.3.5 Cơ lập trình C# lập trình trang ASP.NET 24 2.3.5.1 Kiểu liệu .25 2.3.5.2 Viết code C# file aspx .25 2.3.5.3 Tạo lớp thư viện 25 2.3.5.4 Phương thức khởi dựng lớp 25 2.4 Cơ sở liệu .25 2.4.1 Khái niệm CSDL 26 2.4.2 Đăc điểm .26 2.4.3 Hệ quản trị CSDL .26 2.4.4 Ngôn ngữ truy vấn CSDL SQL 27 Chương III: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 3.1 Cơ cấu tổ chức 28 3.2 Mơ hình phân cấp chức .28 3.3 Chức thành phần hệ thống 30 3.3.1 Quản lý hệ thống 30 3.3.2 Quản lý người dùng 30 3.3.3 Quản lý menu… 30 3.3.4 Quản lý tin tức… 30 3.3.5 Quản lý ảnh… 30 3.3.6 Trả lời người dùng 31 3.4 Mơ hình luồng liệu mức khung cảnh .31 3.5 Mơ hình luồng liệu mức đỉnh 32 3.6 Mơ hình luồng liệu mức đỉnh 32 3.6.1 Chức quản lý thành viên 33 3.6.2 Chức quản trị nội dung website 33 3.6.3 Chức tìm kiếm tra cứu thơng tin .34 3.7 Phân tích thiết kế sở liệu 37 Chương IV: CÀI ĐẶT 5.1 Trang chủ… .36 5.2 Trang tin tức lĩnh vực văn học 36 5.3 Trang hiển thị chi tiết tin 37 5.4 Trang Download tài liệu … 38 5.5 Trang thông tin tuyển sinh 38 5.6 Trang văn nghệ thơ ca 39 5.7 Trang đăng nhập website 39 5.8 Trang đăng ký thành viên 40 5.9 Trang tin tức giáo dục…… .40 5.10 Trang quản trị 41 5.11 Các lớp xử lý,phương thức,thủ tục lưu trữ…………………………………….46 Kết luận 44 Tài liệu tham khảo 45 Chương II: Giới Thiệu Một Số Kiến Thức Áp Dụng Trong Bài Toán 2.1 Phân tích & thiết kế hệ thống Mục đích - Nhận diện phân định thành phần mối quan hệ hệ thống - Đầu vào giai đoạn hồ sơ kết khảo sát hệ thống - Đầu bao gồm: + Biểu đồ chức (BFD - Bussiness Function Diagram) + Biểu đồ dòng liệu (DFD - Data Flow Diagram) + Biểu đồ cấu trúc liệu (ERD – Entity Relational Diagram) 2.1.1 Biểu đồ phân cấp chức (BFD - Bussiness Function Diagram) 2.1.1.1 Khái niệm BFD việc phân rã có thứ bậc đơn giản chức hệ thống miền khảo cứu thành chức nhỏ hơn, cuối thu chức 2.1.1.2 Các thành phần BFD - Ký hiệu chức hình chữ nhật bên Quản lý TT tên chức - Liên kết chức đường thẳng -Tên chức Động từ - bổ ngữ động từ nên dạng thức mệnh lệnh Quản lý Website Ví dụ: Quản lý tin tức Quản lý ảnh Quản lý menu Đăng tin tức Quản lý viết 2.1.1.3 Đặc điểm biểu đồ phân cấp chức - Cung cấp cách nhìn tổng quát chức hệ thống, phạm vi cần phân tích - Trình bày chức hệ thống dạng tĩnh, tức mối quan hệ chuyển giao thông tin chức năng, khơng thể trình tự thực xử lý thông tin - Biểu đồ phân rã chức thường sử dụng để bổ trợ cho việc xây dựng biểu đồ luồng liệu - Chất lượng tên đặt cho chức quan trọng cho thành công hệ thống Mỗi chức cần có tên nhất, tên nên biểu thị thật sát, đầy đủ ý nghĩa chức chức đặt tên Tên chức cần phải phản ánh chức giới thực không cho hệ thống thông tin - Biểu đồ gần với sơ đồ tổ chức, nhiên không nhầm lẫn sơ đồ 2.1.1.4 Cách xây dựng BFD BFD thể đầu việc mà hệ thống cần thực để đạt mục tiêu quản lý (quản lý gì?), việc xây dựng dựa sở bước khảo sát, khảo sát kỹ lưỡng việc xác định mơ hình chức đầy đủ xác • Thơng tin có BFD: - Thể đầy đủ chức mà hệ thống thực - Một chức lớn phân thành chức nhỏ - Việc phân rã tiến hành theo tiêu chí: + Theo chất xử lý (chức năng) + Theo phận thực + Theo liệu phải xử lý 2.1.1.5 Các bước xây dựng biểu đồ chức năng: - Xem hệ thống chức nhất, gọi mức - Phân rã khối chức mức thành chức nhỏ mức dưới, đánh số mức 1, mức 2, Mức Hệ thống A B C D Mức Mức Từ chức phân rã thành chức để hình thành nên biểu đồ hình mà gốc - Sơ đồ nên tương đối "cân bằng" theo nghĩa mức chức thấp nên xác định tương đương - Phân tích chức đưa chi tiết quan trọng mà chi tiết dùng nhiều giai đoạn sau phân tích 2.1.2 Biểu đồ luồng liệu (DFD - Data Flow Diagram) 2.1.2.1 Khái niệm - DFD diễn tả tập hợp chức hệ thống mối quan hệ chuyển giao thông tin chức hay nói khác cung cấp tranh động hệ thống - DFD sử dụng công cụ tất giai đoạn phân tích, thiết kế, trao đổi lưu trữ liệu 2.1.2.2 Mục đích - Xác định yêu cầu người sử dụng (NSD) - Lập kế hoạch minh hoạ phương án cho nhà phân tích NSD xem xét - Là công cụ trao đổi nhà phân tích NSD tính tường minh DFD - Làm tài liệu đặc tả yêu cầu hình thức đặc tả thiết kế hệ thống Việc diễn tả biểu đồ chia thành mức: • Biểu đồ luồng liệu mức vật lý: - Trong biểu đồ mức vật lý mô tả tất chức xử lý, phương tiện xử lý, giá mang thông tin (phương tiện mang, vật mang) với mối liên quan - không gian thời gian Biểu đồ mô tả hệ thống làm việc nào, dùng khảo sát hệ thống thiết kế hệ thống • Biểu đồ luồng liệu mức logic (mức khái niệm, hay gọi mức quan - niệm) Biểu đồ bỏ qua yếu tố vật lý, tập trung vào mơ tả hệ thống làm Biểu đồ quan tâm đến chức cần xử lý hệ thống thông tin liên quan đến chức 2.1.2.3 Thành phần chức (DFD- Data Flow Diagram) • Các thành phần biểu đồ - Chức xử lý (Process) - Luồng thông tin (Data Flows) - Kho liệu (Data Store) - Tác nhân (External Entity) - Tác nhân (Internal Entity) • Các chức xử lý (Process) - Khái niệm: Chức trình biến đổi thông tin - Ký hiệu chức 10 H2.Giao diện trang Tin Học 5.3 Trang hiển thị chi tiết tin H3.Giao diện trang hiển thị chi tiết tin 5.4 Trang Download sách tài liệu 32 H4.Giao diện trang download Tại trang download,ta thấy chưa đăng nhập,sẽ nhận thông báo “Bạn cần đăng nhập thấy link download”.Vì bạn phải thành viên website đăng nhập thấy link download 5.5 Trang thông tin tuyển sinh H5.Giao diện trang thông tin tuyển sinh 5.6 Trang tin văn nghệ-thơ ca 33 H6.Giao diện trang tin văn nghệ-thơ ca 5.7 Trang đăng nhập website H7.Giao diện trang đăng nhập hệ thống 5.8 Trang đăng ký thành viên 34 H8.Giao diện trang đăng ký thành viên 5.9.Giao diện trang tin tức giáo dục H9.Giao diện trang tin tức giáo dục 5.10 Trang Quản trị 35 Đây phần quan website Trang cho phép người quản trị thêm, sửa, xóa, thơng tim hoat động thông báo nhà trường Trang quản trị có người dược cấp tài khoản admin truy cập vào hệ thống quản trị Đây giao diện đăng nhập, trước vào hệ thống Người sử dụng phải đăng nhập tài khoản admin cấp 36 Đây giao diện trang admin sau đăng nhập thành công Trang có chức cập nhât tin tức, menu, thơng báo Giao diện quản lý người dùng 37 Giao diện trang đăng tin tức cho website Giao diện quản lý tin tức 38 Giao diện trang quản lý ảnh quảng cáo website 5.11 Các lớp, phương thức, thủ tục lưu trữ 5.11.1 Để thiết kế chức trang quản trị chúng em sử thủ tục lưu trữ (Stored Procedure) để quản lý thêm, sửa, xóa.Dưới số Stored Procedure mà chúng em sử dụng bài: Stored Procedure quản lý cập nhật tin: ALTER PROCEDURE CapNhat @mabantin int, @tieude nvarchar(255), @noidungtomtat ntext, @noidung ntext, @ngaydangtin datetime, @hinhanh nvarchar(255), @chuthichhinh nvarchar(255), @malinhvuc nvarchar(10) AS begin update BANTIN set tieude=@tieude, noidungtomtat=@noidungtomtat, noidung=@noidung, ngaydangtin=@ngaydangtin, hinhanh=@hinhanh, chuthichhinh=@chuthichhinh, malinhvuc=@malinhvuc where mabantin=@mabantin end 39 Stored Procedure quản lý thêm tin tức mới: ALTER PROCEDURE ThemTinTuc @mabantin int, @tieude nvarchar(255), @noidungtomtat ntext, @noidung ntext, @ngaydangtin datetime, @hinhanh nvarchar(255), @chuthichhinh nvarchar(255), @malinhvuc nvarchar(10) AS begin insert into BANTIN values(@mabantin,@tieude,@noidungtomtat,@noidung,@ngaydangtin,@hinhanh,@chu thichhinh,@malinhvuc) end Stored Procedure quản lý xóa tin tức: ALTER PROCEDURE Xoa @mabantin int AS begin delete from BANTIN where mabantin=@mabantin end 5.11.2 Các lớp xử lý (Class) Để xử lý thêm, sửa, xóa viết, ảnh quảng cáo, quản lý người dùng……sau có thủ tục lưu trữ, chúng em tiến hành viết lớp xử lý lấy đối tượng từ Stored Procedure.Dưới số lớp xử lý (Class) chính: Lớp xử lý kết nối Database, thực thi lệnh executenonquery, ExecuteScalar để trả giá trị public class AccessData { private string ConnecString = ConfigurationManager.ConnectionStrings["Data"].ConnectionString; public SqlConnection GetConnect() { return new SqlConnection(ConnecString); } //Ham tra ve datatable public DataTable GetTable(string sql) { SqlConnection = GetConnect(); SqlDataAdapter ad = new SqlDataAdapter(sql,con); DataTable dt = new DataTable(); ad.Fill(dt); 40 con.Close(); return dt; } //ham thuc thi lenh executenonquery public void ExecuteNonquery(string sql) { SqlConnection = GetConnect(); con.Open(); SqlCommand cmd = new SqlCommand(sql,con); cmd.ExecuteNonQuery(); con.Close(); cmd.Dispose(); } //Ham thuc thi lenh ExecuteScalar de tra ve gia tri public string ExecuteScalar(string sql) { SqlConnection = GetConnect(); con.Open(); SqlCommand cmd = new SqlCommand(sql,con); string kq = cmd.ExecuteScalar().ToString(); con.Close(); cmd.Dispose(); return kq; } public SqlDataReader ExecuteReader(string sql) { SqlConnection = GetConnect(); con.Open(); SqlCommand cmd = new SqlCommand(sql,con); SqlDataReader reader = cmd.ExecuteReader(); return reader; } } Lớp xử lý thêm, sửa, xóa liệu database public class BaiViet { //Khai bao cac thuoc tinh public int mabantin { get; set; } public string tieude { get; set; } public string noidungtomtat { get; set; } public string noidung { get; set; } public string ngaydangtin { get; set; } public string hinhanh { get; set; } public string chuthichhinh { get; set; } public string malinhvuc { get; set; } AccessData ac = new AccessData(); public void Insert(BaiViet bv) { SqlConnection conn = ac.GetConnect(); conn.Open(); SqlCommand cmd = new SqlCommand("ThemTinTuc",conn); cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.Add("@mabantin",System.Data.SqlDbType.Int).Value=bv.mabantin ; cmd.Parameters.Add("@tieude", System.Data.SqlDbType.NVarChar).Value = bv.tieude; 41 cmd.Parameters.Add("@noidungtomtat", System.Data.SqlDbType.NText).Value = bv.noidungtomtat; cmd.Parameters.Add("@noidung", System.Data.SqlDbType.NText).Value = bv.noidung; cmd.Parameters.Add("@ngaydangtin", System.Data.SqlDbType.DateTime).Value = bv.ngaydangtin; cmd.Parameters.Add("@hinhanh", System.Data.SqlDbType.NVarChar).Value = bv.hinhanh; cmd.Parameters.Add("@chuthichhinh", System.Data.SqlDbType.NVarChar).Value = bv.chuthichhinh; cmd.Parameters.Add("@malinhvuc", System.Data.SqlDbType.NVarChar).Value = bv.malinhvuc; cmd.ExecuteNonQuery(); cmd.Dispose(); conn.Close(); } public void Update(BaiViet bv) { SqlConnection conn = ac.GetConnect(); conn.Open(); SqlCommand cmd = new SqlCommand("CapNhat", conn); cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.Add("@mabantin", System.Data.SqlDbType.Int).Value = bv.mabantin; cmd.Parameters.Add("@tieude", System.Data.SqlDbType.NVarChar).Value = bv.tieude; cmd.Parameters.Add("@noidungtomtat", System.Data.SqlDbType.NText).Value = bv.noidungtomtat; cmd.Parameters.Add("@noidung", System.Data.SqlDbType.NText).Value = bv.noidung; cmd.Parameters.Add("@ngaydangtin", System.Data.SqlDbType.DateTime).Value = bv.ngaydangtin; cmd.Parameters.Add("@hinhanh", System.Data.SqlDbType.NVarChar).Value = bv.hinhanh; cmd.Parameters.Add("@chuthichhinh", System.Data.SqlDbType.NVarChar).Value = bv.chuthichhinh; cmd.Parameters.Add("@malinhvuc", System.Data.SqlDbType.NVarChar).Value = bv.malinhvuc; cmd.ExecuteNonQuery(); cmd.Dispose(); conn.Close(); } public void Delete(BaiViet bv) { SqlConnection conn = ac.GetConnect(); conn.Open(); SqlCommand cmd = new SqlCommand("Xoa", conn); cmd.CommandType = System.Data.CommandType.StoredProcedure; cmd.Parameters.Add("@mabantin", System.Data.SqlDbType.Int).Value = bv.mabantin; cmd.ExecuteNonQuery(); cmd.Dispose(); conn.Close(); } } Sau tạo lớp xử lý, chúng em thiết kế trang quản lý sử dụng lớp (Class) vừa tạo: 42 Phương thức gọi lớp xử lý class: BaiViet bv = new BaiViet(); Hàm chọn dòng liệu girdview đổ xuống textbox xóa liệu: protected void GirdView1_RowCommand(object sender, GridViewCommandEventArgs e) { int index = int.Parse(e.CommandArgument.ToString()); if (e.CommandName == "Select")//Load du lieu len luoi { var ac = new AccessData(); SqlDataReader reader = ac.ExecuteReader(@"select tieude,noidungtomtat,noidung,hinhanh,chuthichhinh,malinhvuc from BANTIN where mabantin="+int.Parse(girdhienthi.Rows[index].Cells[0].Text)+""); while (reader.Read()) { txttieude.Text = reader[0].ToString(); txtnoidungtomtat.Text = reader[1].ToString(); fcknoidung.Value= reader[2].ToString(); txtpath.Text = reader[3].ToString(); txtchuthich.Text = reader[4].ToString(); DropDownList1.SelectedValue = reader[5].ToString(); } reader.Close(); ViewState["mabantin"] = int.Parse(girdhienthi.Rows[index].Cells[0].Text); } else if (e.CommandName == "del") { BaiViet bv = new BaiViet(); bv.mabantin = int.Parse(girdhienthi.Rows[index].Cells[0].Text); bv.Delete(bv); Response.Redirect("~/Admin/Quanlitintuc.aspx"); } } Hàm upload ảnh vào sở liệu: protected void Button2_Click(object sender, EventArgs e) { try { var bv = new BaiViet() { mabantin = int.Parse(ViewState["mabantin"].ToString()), tieude=txttieude.Text, noidungtomtat=txtnoidungtomtat.Text, noidung=fcknoidung.Value, ngaydangtin=DateTime.Now.ToShortDateString(), hinhanh=txtpath.Text, chuthichhinh=txtchuthich.Text, malinhvuc=(DropDownList1.SelectedValue) }; bv.Update(bv); Response.Redirect("~/Admin/Quanlitintuc.aspx"); } catch (Exception) { throw;}} 43 KẾT LUẬN Kết thúc tập lớn này,chúng em vận dụng kiến thức học thời gian qua.Chúng em vận dụng cách lập trình mơn lập trình Win(C#) vào thiết kế Webform mơi trường ASP.NET C# 3.5,như webform đăng nhập,phân quyền,tin tức… sử dụng code html để bố trí hình ảnh,banner,table…Và số kiến thức em tự học trình tìm kiếm để làm đồ án Tuy vậy, thời gian làm tập lớn kiến thức em hạn chế nên ý tưởng em cho website như: “thiết kế mục giải trí cho học sinh.Các mục trị chơi Tốn học, đố vui nhằm nâng cao tư học sinh”.vẫn chưa hoàn thiện Với kiến thức tảng học trường, kiến thức tự học hỏi Internet trình làm tập lớn, chúng em hồn thành đề tài “Xây dựng Website tin tức cho trường THPT” Mặc dù cố gắng đầu tư nhiều thời gian kiến thức có hạn nên đề tài chúng em không tránh khỏi thiếu sót Chúng em mong nhận thơng cảm góp ý Thầy để chương trình ngày hoàn thiện 44 TÀI LIỆU THAM KHẢO [1]: Trần Ngọc Anh, “ASP & Kỹ thuật lập trình Web”, Nhà xuất Trẻ, 2002 [2]: Nguyễn Phương Lan, “Giáo trình tin học lý thuyết tập ASP 3.5 ASP.NET ”, Nhà xuất Giáo dục, 2001 [3]: “Những thực hành ASP”, Nhà xuất Thống Kê, 2002 [4]: VN-GUIDE tổng hợp biên dịch, “ASP sở liệu chuyên sâu”, Nhà xuất Thống Kê, 2002 [5]: Phạm Hữu Khang, “Lập trình ứng dụng chuyên nghiệp SQL Server 2000”, Nhà xuất Giáo dục, 2002 [6]: Thạc Bình Cường, “Phân tích thiết kế hệ thống thông tin”, Nhà xuất khoa học kỹ thuật, 2002 [7]: PGS- TS Nguyễn Văn Ba “Giáo Trình Phân Tích Thiết Kế Hệ Thống Thơng Tin” -Nhà Xuất Bản Đại Học Gia Hà Nội- 2003 [8]: Lưu Bích Thủy “Tự Học ASP.NET Website “ Và số trang web: http://aspvn.net/ http://codeprojects.com/ http://diendandaihoc.com.vn/ link full code: https://drive.google.com/file/d/11EBiCTMmzQwnWTImSKeeCsST6dNjynov/view? usp=sharing 45 46 ... Việc Đinh Ngọc Dũng Thiết kế trang MasterPage trang Trần Hải Đăng Ngô Văn Phương Thiết kế Database Nguyễn Minh Tuấn Thiết kế trang đăng ký đăng nhập, trang admin MỤC LỤC Trang Chương I: NHIỆM... người lập trình viết mã ASP. NET với ngôn ngữ hỗ trợ NET language 2.3.2 Các điều khiển Asp. net 19 Các điều khiển asp. net phần quan trọng ASP. NET Framework Một Control ASP. NET lớp mà thực thi server... động, tin tức giáo dục, trường Được cập nhật hàng ngày từ người quản trị hệ thống 5.2 Trang tin tức lĩnh vực tin học 31 H2.Giao diện trang Tin Học 5.3 Trang hiển thị chi tiết tin H3.Giao diện trang