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

Project 2 Quarter 6 Fast Learn

21 350 5

Đ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 21
Dung lượng 234,1 KB

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

Nội dung

Cơ sở dữ liệu sẽ bao gồm những thông tin sau:  Chi tiết sinh viên  Chi tiết giảng viên  Chi tiết môn học  Chi tiết bài giảng khoá học  Feedback của học viên - Trang web sẽ cung cấp

Trang 1

MỤC LỤC

Project on Fast Learn 3

Giấy chứng nhận 4

Acknowlegement 5

Yêu cầu về phần cứng và phần mềm 6

Đại học từ xa Fast Learn 7

Hệ thống hiện tại 8

Yêu cầu hệ thống mới 9

Thiết kế cơ sở dữ liệu 10

Thiết kế chức năng 12

Thiết kế giao diện 20

Nhận xét của giảng viên 22

Trang 2

PROJECT ON FAST LEARN

Giảng Viên : Châu Ngân Khánh

o Mã Lớp : B100025

o Ngày Bắt Đầu : 09/08/2011

o Ngày Kết Thúc : 14/09/2011

o Tên Giảng Viên : Phạm Tiến Phúc &Châu Ngân Khánh

o Tên Người Phát Triển : Huỳnh Thủy Ngân

o Ngày Hoàn Thành : 17/10/2011

Trang 3

GIẤY CHỨNG NHẬN

 Đây là xác nhận rằng báo cáo này, có tựa đề là Fast Learn, là tácphẩm gốc được thực hiện bởi Huỳnh Thủy Ngân là một phần của yêucầu khóa học tại NIIT.

Trang 4

 Tôi đã được sự giúp đỡ cùng những sự phản hồi và đề nghị chotôi bởi giảng viên Châu Ngân Khánh và các giảng viên khác, điều viênphòng máy trong NIIT

Trang 6

ĐẠI HỌC TỪ XA FAST LEARN

Fast Learn là một đại học từ xa được thành lập bởi Samuel Roger từ 10 năm trước Fast Learn là một trong những đại học từ xa hàng đầu tại Anh

có trụ sở chính đặt tại New York và có nhiều văn phòng đại diện trên khắp thế giới Mức tăng của đại học hàng năm là 3 triệu đôla Mỹ

Fast Learn được biết đến với nền giáo dục xuất sắc, thu hút hàng ngàn học sinh từ khắp các nước trên thế giới Chương trình học của Fast Learn gồm các lĩnh vực sau:

Trang 7

HỆ THỐNG HIỆN TẠI

Hiện tại, Fast Learn đang sử dụng phương pháp quản lý khoá học cũ Mỗisinh viên được đăng kí tại 1 văn phòng đại diện, nơi mà học viên phải liênlạc hằng tuần Tài liệu khoá học thì được cung cấp trên giấy Học viên phảiđến trung tâm để lấy tài liệu

Những câu hỏi của học viên được trả lời qua điện thoại hoặc trong quátrình học Tuy nhiên, câu trả lời trên điện thoại là 1 câu trả lời chuyên môn

Số lượng học viên quá lớn để trả lời hết những câu hỏi Việc giải quyết câuhỏi cho số lượng lớn học viên là rất khó

Quản lý đã nhận được nhiều phàn nàn từ học viên về việc:

- Nhiều khi giảng viên không rảnh để trả lời câu hỏi khi họ gọi

- Học viên phải đến trung tâm để lấy thông tin học phí và đăng kí khoáhọc

- Học viên phải đến trung tâm để lấy tài liệu in sẵn cho khoá học

Với những ý kiến về những khoá học này, Fast Learn đang loại bỏ chúngbằng cách cung cấp phương pháp học nhanh cho học viên

Hơn nữa, giám đốc tại các trung tâm cũng gặp phải nhiều vấn đề Vấn đềchính đáng được lưu ý là:

- Câu hỏi chuyên môn vượt quá thời gian vì giảng viên dành hầu hếtthời gian của họ để trả lời những câu hỏi tương tự cho những họcviên khác nhau

- Việc tìm kiếm thông tin học viên, thường được làm thường xuyên,mất nhiều thời gian

- Lưu trữ tài liệu in sẵn không những tốn kém mà còn không thân thiệnvới môi trường

Trang 8

YÊU CẦU HỆ THỐNG MỚI

Dựa trên khả năng quan sát của quản lý, trường đã quyết định phát triểnmột trang học trực tuyến cho Fast Learn Quyết định sau được đưa ra đểphát triển trang học trực tuyến:

- Trang web sẽ lưu trữ tất cả dữ liệu cho hệ thống hiện tại trong 1 cơ

sở dữ liệu Cơ sở dữ liệu sẽ bao gồm những thông tin sau:

 Chi tiết sinh viên

 Chi tiết giảng viên

 Chi tiết môn học

 Chi tiết bài giảng khoá học

 Feedback của học viên

- Trang web sẽ cung cấp nội dung khoá học đến học viên trên mộtform điện tử

- Tất cả thông tin bao gồm chi tiết khoá học, lưu ý cho sinh viên, tàiliệu khoá học cũng được hiển thị trên trang web

Khi vào trang web, học viên sẽ được cung cấp các tiện ích sau:

- Xem thông tin khoá học: phần này sẽ cho phép 1 học viên tìm kiếmkhoá học và xem thông tin về việc đăng kí khoá học

- Đăng kí khoá học: phần này cho phép học viên đăng kí khoá học

- Xem tài liệu khoá học: phần này cho phép học viên lấy tài liệu khoáhọc mà học viên đăng kí

- Gửi feedback: phần này cho phép học viên gửi phản hồi về cho trungtâm

- Sửa thông tin học viên: phần này cho phép học viên sửa thông tincủa học viên

- Xem danh sách khoá học: phần này cho phép học viên xem danhsách các khoá học mà mình đã đăng kí

Trang 9

-THIẾT KẾ CƠ SỞ DỮ LIỆU

Trang 10

nhiều nhiều nên sinh ra bảng mới, ta đặt là Register, bảng này sẽkéo khoá chính của 2 bảng cha về làm khoá chính, nhưng để dễquản lí, chúng tôi tạo thêm RegisterID.

- Bảng Teacher: FacultyID là khoá ngoại được truy xuất từ bảngFaculty

- Bảng Course: TeacherID là khoá ngoại được truy xuất từ bảngteacher

- Bảng Register: CourseID, StudentName là khoá ngoại được truy xuấtlần lượt từ các bảng Course, Student

- Bảng Feedback: StudentName là khoá ngoại được truy xuất từ bảngStudent

- Bảng Query: StudentName, TeacherID là khoá ngoại được truy xuấtlần lượt từ các bảng Student, Teacher

Trang 11

THIẾT KẾ CHỨC NĂNG

1 Chức năng đăng nhập:

- Ở chức năng này, học viên sẽ đăng nhập bằng tài khoản vàpassword đã được đăng kí trước đó, nếu hệ thống kiểm tra dữ liệutrùng khớp chức năng sửa thông tin cá nhân sẽ được bật và ngườidùng sẽ sử dụng được các chức năng còn lại của trang web

- Ở chức năng này chúng tôi không sử dụng control Log in có sẵncủa .net mà sử dụng form tự tạo bằng những text box, label vàbutton

- Việc kiểm tra tài khoản đăng nhập có đúng hay không sẽ được thựchiện bằng cách so sánh tài khoản đăng nhập, password với cơ sở dữliệu bằng kết nối sql Sau khi đăng nhập thành công, tên đăng nhập

sẽ được lưu lại bằng session

protected void btn_login_Click( object sender, EventArgs e)

{

DataClassesDataContext db = new DataClassesDataContext ();

string sql = "select * from Student where UserName='" +

txt_username.Text.Trim() + "' and Password='" + txt_pass.Text.Trim() + "'" ; SqlConnection conn = new

SqlConnection (System.Web.Configuration WebConfigurationManager ConnectionSt rings[ "Fast_Learn_1ConnectionString" ].ConnectionString);

SqlDataAdapter da = new SqlDataAdapter (sql, conn);

DataTable dt = new DataTable ();

Trang 12

- Sau khi đăng nhập thành công, trang web sẽ tự động chuyển họcviên qua trang sửa thông tin cá nhân, học viên cũng có thể quay trởlại trang này bằng cách bấm vào link phía dưới tên nick.

- Ở chức năng này chúng tôi sử dụng control details view trong nhómdata control Cơ sở dữ liệu được kết nối bằng sql string connection

và lấy ràng buộc là nick vừa đăng nhập Học viên có thể sửa chữathông tin cá nhân của mình bằng cách nhấn vào link edit Sau khithay đổi thông tin, nhấn vào link update, thông tin sẽ được thay đổi

và cập nhật và cơ sở dữ liệu

< asp : SqlDataSource ID ="SqlDataSource1" runat ="server"

ConnectionString =" <%$

ConnectionStrings:Fast_Learn_1ConnectionString %> "

DeleteCommand ="DELETE FROM [Student] WHERE [UserName] = @UserName"

InsertCommand ="INSERT INTO [Student] ([UserName], [Address],

[Birthday], [Name], [Phone]) VALUES (@UserName, @Address, @Birthday, @Name,

@Phone)"

SelectCommand ="SELECT [UserName], [Address], [Birthday], [Name], [Phone] FROM [Student] WHERE ([UserName] = @UserName)"

UpdateCommand ="UPDATE [Student] SET [Address] = @Address,

[Birthday] = @Birthday, [Name] = @Name, [Phone] = @Phone WHERE [UserName] =

< asp : Parameter Name ="Address" Type ="String" />

< asp : Parameter Name ="Birthday" Type ="DateTime" />

< asp : Parameter Name ="Name" Type ="String" />

< asp : Parameter Name ="Phone" Type ="String" />

< asp : Parameter Name ="UserName" Type ="String" />

</ UpdateParameters >

< InsertParameters >

< asp : Parameter Name ="UserName" Type ="String" />

< asp : Parameter Name ="Address" Type ="String" />

< asp : Parameter Name ="Birthday" Type ="DateTime" />

< asp : Parameter Name ="Name" Type ="String" />

< asp : Parameter Name ="Phone" Type ="String" />

</ InsertParameters >

</ asp : SqlDataSource >

Trang 13

- Nếu học viên chưa có tài khoản, học viên có thể sử dụng chức năng này để tạo một tài khoản đăng nhập, với tên đăng nhập và email là duy nhất.

- Ở chức năng này chúng tôi sử dụng CreateUserWizard khi kế thừa lớp MembershipProvider Để sử dụng được chức năng này, ngoài việc override hàm CreateUser, chúng tôi phải override lại tất cả các hàm trong lớp này mới có thể sử dụng được theo ý muốn Nhưng trong phần báo cáo này chúng tôi chỉ đề cập đến phần tạo tài khoản đăng nhập thôi

- Khi override chức năng này, chúng tôi sử dụng Linq để tạo kết nối và insert dữ liệu mới vào cơ sở dữ liệu

public override MembershipUser CreateUser( string username, string password,

string email, string passwordQuestion, string passwordAnswer, bool isApproved,

object providerUserKey, out MembershipCreateStatus status)

LastLockedOutDate = DateTime Now,

LastLoginDate = DateTime Now

Trang 14

MembershipUser user = new MembershipUser ( base Name.ToString(),

stu.UserName.ToString(),

providerUserKey, stu.Email.ToString(),

stu.SercurityQuestion.ToString(),

stu.SercurityAnswer.ToString(), true , false ,

DateTime Now, DateTime Now,

DateTime Now, DateTime Now, DateTime Now);

return user;

- }

Sơ đồ Linq:

4 Chức năng phục hồi mật khẩu:

- Khi học viên quên mật khẩu đăng nhập là lúc học viên cần sử dụngchức năng này

- Khi sử dụng, học viên sẽ được yêu cầu trả lời câu hỏi định danh, dohọc viên tự nghĩ ra lúc đăng kí tài khoản Nếu trả lời đúng, password

Trang 15

- Ở chức năng này chúng tôi cũng sử dụng wizard củaMembershipProvider.

public override string ResetPassword( string username, string answer)

{

DataClassesDataContext db = new DataClassesDataContext ();

Student stu = db.Students.SingleOrDefault(p => p.UserName ==

username && p.SercurityAnswer == answer);

5 Chức năng xem danh sách khoá học:

- Học viên muốn đăng kí khoá học thì phải biết được thông tin sơ lược

về các khoá học, ở chức năng này chúng tôi cho trang web hiển thị hết tất cả các khoá học một cách sơ lược để học viên lựa chọn và đăng kí

- Ở chức năng này chúng tôi sử dụng gridview và dùng linq để lấy thông tin trong cơ sở dữ liệu để đưa vào gridview

protected void jointable()

{

DataClassesDataContext db = new DataClassesDataContext ();

var query1 = from c in db.Courses

Trang 16

6 Chức năng đăng kí khoá học:

- Khi đã chọn khoá học muốn học và bấm đăng kí, thông tin chi tiết củakhoá học sẽ hiện ra cho biết các thông tin như: tên khoá học, ID khoáhọc, tên giảng viên, tài liệu học, học kì học, mô tả khoá học

- Chức năng này chúng tôi sử dụng formview để hiển thị và dùngstored procedure với tham số vào là ID của khoá học, được lưu bằngSession

ALTER PROCEDURE dbo.StoredProcedure1 @parameter1 char (5)

from Course, Faculty, Teacher

where Course.TeacherID=Teacher.TeacherID and

Teacher.FacultyID=Faculty.FacultyID and Course.CourseID like @parameter1

/* SET NOCOUNT ON */

-7 Chức năng xem danh sách các môn đã đăng kí:

- Nếu muốn xem lại các môn mình đã học, học viên sẽ sử dụng chức năng này, nhưng học viên không được phép xoá hay sửa thông tin được load lên

- Chức năng này được tạo bằng gridview, và chỉ hiện thị ID khoá học

đã học dựa trên tên tài khoản đăng nhập thôi

< asp : SqlDataSource ID ="SqlDataSource1" runat ="server"

Trang 17

- Chức năng này cho phép học viên tạo feedback Nội dung feedback,thời gian gửi feedback, tài khoản gửi feedback sẽ được lưu lại trong

cơ sở dữ liệu thông qua linq

protected void Button2_Click( object sender, EventArgs e)

{

DataTable dt = ( DataTable )Session[ "TenDangNhap" ];

dt.Rows[0][ "UserName" ].ToString();

string fbID = IncreaseFeedbackID();

DataClassesDataContext fb = new DataClassesDataContext ();

Feedback nfb = new Feedback ();

Ngoài ra, để insert các dữ liệu vào cơ sở dữ liệu, tôi đã sử dụng hàm

tự tăng ID Đây là hàm tự tăng ID dành cho Feedback, các ID kháccũng được tạo tương tự Chúng tôi lấy số dòng của bảng rồi tạo cáctrường hợp để tìm được ID thích hợp

protected string IncreaseFeedbackID()

{

SqlConnection con = new SqlConnection ( "Data Source = ICARE_4810T\\ SQLEXPRESS; Initial Catalog = Fast_Learn_1; Integrated Security = true" ); int ctr, len;

string fbID, fbIDval;

string fb_ID = "" ;

string query1 = "Select FeedbackID from Feedback" ;

SqlDataAdapter da1 = new SqlDataAdapter (query1, con);

DataSet ds1 = new DataSet ();

Trang 19

THIẾT KẾ GIAO DIỆN

Trang Master Page được thiết kế như sau:

< html xmlns ="http://www.w3.org/1999/xhtml">

< head runat ="server">

< title > Fast Learn - an E-Learning Solution </ title >

< meta http-equiv ="Content-Language" content ="English" />

< meta http-equiv ="Content-Type" content ="text/html; charset=UTF-8" />

< link rel ="stylesheet" type ="text/css" href ="text/style.css" media ="screen" />

< asp : ContentPlaceHolder id ="head" runat ="server">

< li >< a href ="Lietkekhoahoc.aspx"> Home </ a ></ li >

< li >< a href ="About.aspx"> About </ a ></ li >

< li >< a href ="Fback.aspx"> Feedback </ a ></ li >

< li >< a href ="Lietkekhoahoc.aspx"> Course </ a ></ li >

< li >< a href ="Taotaikhoan.aspx"> Sign up </ a ></ li >

< li >< a href ="DangNhap.aspx"> Sign in </ a ></ li >

</ ul >

</ div >

< div id ="content">

< div class ="right">

< asp : ContentPlaceHolder id ="ContentPlaceHolder1" runat ="server">

Trang 20

</ div >

</ form >

</ body >

</ html >

Trang 21

NHẬN XÉT CỦA GIẢNG VIÊN

Ngày đăng: 20/08/2014, 12:29

HÌNH ẢNH LIÊN QUAN

Sơ đồ Linq: - Project 2 Quarter 6 Fast Learn
inq (Trang 14)

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

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

w