Luận văn Xây dựng Website thương mại điện tử cho công ty TNHH dịch vụ thương mại Tứ hải

Websites thương mại điện tử Giới thiệu sản phẩm và bán sản phẩm đĩa CD nhằm mục đích ban đầu là học hỏi và tìm hiểu qua về cách thức hoạt động của một websites thương mại điện tử. Với thời gian cũng như lượng kiến thức có hạn xong Websites thương mại điện tử này cũng đã đạt được một số thành công sau -Chương trình có giao diện thân thiện, dễ sử dụng -Đáp ứng được một phần nhỏ của một Websites thương mại điện tử -Đen tới cho khách hàng những thông tin liên quan đến các loại sản phẩm. Khách hàng có thể đặt mua hàng ngay trên mạng -Dữ liệu luôn luôn được cập nhật -Tạo được kênh thông tin với khách hàng, giúp khách hàng trao đổi thông tin, đóng góp ý kiến cho công ty Tuy nhiên Websites này còn rất nhiều hạn chế so với yêu cầu của một websites bán hàng trên mạng Do hạ tầng thương mại điện tử ở nước ta chưa phát triển nên trong hệ thống của chúng tôi không thực hiện hình thức thanh toán trực tuyến. Giao diện không được đẹp do hạn hẹp về thời gian và chỉ chú trọng đến tính khả chạy của website.

doc56 trang | Chia sẻ: oanh_nt | Lượt xem: 1636 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Luận văn Xây dựng Website thương mại điện tử cho công ty TNHH dịch vụ thương mại Tứ hải, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Lời mở đầu Trong những năm gần đây với những thành tựu to lớn của ngành công nghệ thông tin, đặc biệt là sự phát triển mạnh mẽ của Internet cùng với các công cụ sử lý thông tin trên Internet đã tạo điều kiện cho hàng loạt những biến chuyển trong hiện đại hoá các lĩnh vực kinh tế và xã hội trong đó có các hoạt động thương mại điện tử. Thương mại điện tử cung cấp mọi dich vụ cho các hoạt động thông tin trong thương mại, kể cả việc mua bán thanh toán trực tiếo trên mạng Internet, và thương mại điện tử ngày càng chiếm vị trí trung tâm trong sự phát triênt kinh tế. Trong quá trình thực tập và nghiên cứu tại Công ty TNHH dịch vụ thương mại Tứ Hải. Một công ty chuyên cung cấp các loại đĩa CD phần mềm, games, study, music, phim …,cùng nhiều dịch vụ khác, công ty hiện đang hoạt động rất thành công trên thị trường và đã có một số lượng lớn khách hang. Với mục đích áp dụng những kiến thức đã học vào thực tế. Nghiên cứu và hệ thống hoá các nguyên tắc, kỹ thuật tổ chức của một chương trình Website bán hàng trên mạng. Nghiên cứu cơ chế ASP và áp dụng cơ chế này vào đề tài thông qua chương trình. Cùng với nhu cầu mở rộng hơn nữa, quảng bá danh tiếng cũng như số lượng khách hàng của công ty, Chính vì vậy em đã chọn đề tài “Xây dựng Website thương mại điện tử cho công ty TNHH dịch vụ thương mại Tứ hải”, Sản phẩm được giới thiệu và bán là các sản phẩm của công ty Tứ Hải. Chương trình được xây dựng dựa trên nền của Web sử dụng Microsoft Active Server Pages (ASP) và cơ sở dũ liệu Microsoft Access, cùng một số công cụ Microsoft Frontpages, Marcromedia Dreamweaver. Em xin gửi lời cảm ơn tới các thầy trong hội đồng bảo vệ, và đặc biệt là GS .TS Trần Anh Bảo đã giúp em hoàn thành bài luận văn. Sinh viên: Lưu Danh Lam Chương I: Cơ sở lý thuyết và công nghệ I. Tổng quát về Internet 1. Internet Internet là một mạng dùng chung của các máy tính, các máy tính có thể trao đổi thư tín, chia sẻ thông tin, truy cập các phần mềm ứng dụng … mà không cần ở cùng một địa điểm. Internet giống như mạng điện thoại quốc tế, không ai được sở hữu và điều khiển nhưng nó được ghép nối theo một cách làm cho nó trỏ thành một mạng lớn. Internet sử dụng một giao thức truyền thông chuẩn gọi là TCP/IP. Mọi máy tính kết nối với Internet đều phải tuân thủ theo tiêu chuẩn này. Giao thức TCP/IP có thể kết nối các máy tính chậy trên hệ điều hành khác nhau và trong môi trường mạng khác nhau. Mọi người trên thế giới có thể trao đổi bất kỳ một loại thông tin nào. Thông tin đó được số hoá và lưu trên một máy tính, nó bao gồm: các văn bản, hình ảnh, âm thanh, chương trình máy tính… Internet cung cấp một số các hệ thống các dịch vụ cho phép người nối vào Internet truy nhập và sử dụng các thông tin trên mạng Internet. Hệ thống các dịch vụ này đã và đang được bổ xung theo sự phát triển không ngừng của Internet. Các dịch vụ này bao gồm WWW (World Wide Web), Email (thư điện tử), dịch vụ truyền file FTP ( File Tranfer Protocal ), Telnet (ứng dụng cho phép truy cập máy tính ở xa ), và một số dịch vụ khác nữa. 2 . Lợi ích từ Internet: WWW là dịch vụ ra đời gần đây nhất,nhưng phát triển nhanh nhất hiện nay. Web cung cấp một số giao diện vô cùng thân thiện với người dùng, dễ sử dụng, vô cùng thuận lợi và đơn giản để tìm kiếm thông tin dụa trên công nghệ hyperlinhk(siêu liên kết )cho phép các Web liên kết với nhau trực tiếp qua các địa chỉ của chúng.Thông qua Web, người dùng có thể : -Phát hành các tin tức của mình và đọc các tin tức từ khắp các nơi trên thế giới -Quảng cáo về mình, về công ty hay tổ chức của mình cũng như xem các loại quảng cáo trên thế giới, từ kiếm việc làm, tuyển mộ nhân viên, công nghệ và sản phẩm mới -Trao đổi thông tin với bè bạn, các tổ chức xã hội, các trung tâm nghiên cứu trường học -Thực hiện các dịch vụ chuyển tiền hay mua bán hàng hoá và rất nhiều hoạt động khác nữa II. Active server pages(asp) Microsoft Actve Server Page là một môi trường giúp ta áp dụng các ngôn ngữ Script để tạo ra những ứng dụng thực sự năng động có tính bảo mật cao và khả năng giao tiếp của chương trình ứng dụng. các đoạn nhỏ trong chương trình gọi lá các Script sẽ được nhúng vào trong các trang ASP để phục vụ cho việc đóng, mở, thao tác với các dữ liệu cũng như việc điều khiển các trang Web tương tác với ngưòi dùng . Có hai ngôn ngữ Script chính mà ASP hỗ trợ đó là VBScript và Javacript. Ngôn ngữ được ASP hỗ trợ mặc định là VBScript cho nên muốn sử dụnh ngôn ngữ Script mặc định là JavaScript chẳng hạn thì phải có dòng khai báo như sau ở đầu trang ASP ASP đựoc đặt tên Web Server và hoạt đông dụa trên Active Server Script với II S 3.o. ASP giao tiếp với Active server component thông qua Com để truy cập tới CSDL hoặc truy cập trực tiếp với CSDL .Active server là các chương trình được xây dựng trên các ngôn ngữ lập trình như visual basic ,visul C++ và được dịch thành file dạng *exe hay *dll các ngôn ngữ Script có cấu trúc đơn giản và gọn nhẹ hơn nhiều so với các ngôn ngữ lập trình cùng loại và điểm khác biệt giữa các ngôn ngữ Script đó là về cú pháp và các quy định riêng. Do tính năng gọn nhẹ dơng giản mà các đoạn chương trình Script có thể được lồng vào ngay trong các trang Web Để chạy được những đoạn chương trình được viết bằng ngôn ngữ Script thì phải có máy Script (engine). Máy Script làm nhiệm vụ đọc tệp nguồn của chương trình, dịch và thực hiện các câu me4ẹnh lệnh trong đó. Mỗi ngôn ngư Script đòi hỏi phải có một máy Script riêng. Ví dụ các đoạn chương trình viết bằng VBScript thì phải có VBScript engine bằng Java Script thì phải có giava Script engine Server – side script : Là những đoạn script nằm trong tệp ASP sẽ được thực hiện ở máy chủ mmà sẽ không nằm trong kết quả trả về cho wed Bweb Bdowfer của người dùng. Các server-side script được khai báo theo cú pháp như sau . Client – side script : Là những đoạn script nằm trong tệp ÁP mà nó sẽ có trong kết quả trả về Ưed browser. Thường là những đoạn script này điều khiển cách mà trang Wed kết quả đó tương tác với người dùng. 1. Mô hình hoạt động : Các hoạt động của mô hình ASP được mô tả tóm tắt qua ba buớc sau Bước1 : Khi Web Browser ở máy người sủ dụng gửi một yêu cầu về một tệp ASP cho Web Server Bước 2: Tệp Asp có được nạp vào bộ nhớ và thực hiện ( tại máy chủ). Các đoạn trương trình script trong tệp ASP đó có thể là mở dư liệu, thao tác với dữ liệu để lấy được những thông tin mà người dùng cần đến. Trong giai đoạn này tệp ASP đó cũng xác định xem là đoạn script nào là chay trên máy chủ, đoạn script nào là chay trên máy người dùng Bước 3 : Sau khi thực hiện xong thì kết quả thực hiện của tệp Asp đó sẽ được trả về cho Web Browser của người dùng dưới dạng trang Wed tĩnh. WEB SERVER DB SERVER CLIEN ODBC OLEDB Trình duyệt Web ADO ASP DBMS SQL SERVER Hinh- Mô hình hoạt động Web 2. Các thành phần chính của ASP 2.1. Application: Đối tượng application được dùng để chia sẻ thông tin giữa các người dùng của cùng một hệ thống ứng dụng. Một ứng dụng cơ bản ASP được định nghĩa là gồm tất cả các tệp ASP ở trong một thư mục ảo và tất cả các thư mục con của thư mục ảo đó. Có thể sử dụng phương thức Look và Unlook của đối tượng application để khoá và mở khoá khi chậy ứng dụng đó với nhiều người dùng. Các phương thức ( Methods ) LOOK: Không cho các người dùng khác thay đổi thuộc tính các đối tượng của application. UNLOOK: Huỷ bỏ LOOK Các sự kiện ( Events ) Application_OnStart: Xẩy ra khi một yêu cầu tới tệp đầu tiên trong hệ thống ứng dụng. Application_OnEnd: Xẩy ra khi hệ thống ứng dungj kết thúc. Biến Application: Biến application có giá trị toàn cục đối với tất cả các trang và nhìn thấy cung như truy xuất được bởi tất cả các Session khác nhau. Do phạm vi toàn cục nên biến Application thường được dùng để lưu trữ các biến sử dụng cho toàn bộ Website, lưu các biến chứa thông tin về kết nối cơ sở dũ liệu. 2.2. Session: Đối tượng Session được dùng để lưu trữ thông tin riêng rẽ của từng phiên làm việc. Các thông tin lưu trữ trong Session không bị mất đi khi người dùng chuyển từ trang Web này sang trang Web khác. Các thông tin được lưu trữ trong Session thương là các thông tin về người dùng hoặc các điều kiện. Đối tượng Session được Web Server tự động tạo ra nếu như các trang Web của ứng dụng được đòi hỏi bởi một người dùng mà chưa có SessionID. SessionID là một mã mà Web Server sẽ gửi về cho Web Browser ở máy người dùng và mã này dùng cho Web Server nhận biết là yêu cầu được gửi từ Session nào đến. Mỗi một Session có một định danh phân biệt với các Session đang hoat động khác. Các phương thức ( Methods ) Abandon: Huỷ bỏ Session hiện thời và giải phóng mọi thông tin liên quan đến Session. Các sự kiện ( Events ) Session_OnStart: Xẩy ra khi Server tạo một Session mới và việc này được thực hiện trước khi Server trả lời yêu cầu cảu Web Browser. Mọi thông tin và các biến sử dụng chung trong một Session tốt nhất là được khởi tạo từ đây và mọi thành phần khác của ASP đều có thể được tham khảo trong sự kiện này. Session_OnEnd: Xẩy ra khi Session kết thúc hoặc bị hết hạn ( TimeOut ). 2.3. Request Đối tượng này chứa tất cả các thông tin của Web Browser gửi đến Server, thông qua Giao thức TCP/IP. Cú pháp : Request[.collection/property/methods]( Variable ) Trong đó thành phần Collection có thể gồm những đối tượng sau. -Cookies: Một tập các giá trị của tất cả các Cookies được gửi từ hệ thống của người dùng cùng với Request -Form: Một tập các giá trị của các Control HTML trong phân đoạn được đệ trình khi dặt giá trị của thuộc tính METHODS là POST. Giá trị này có thể đọc được theo cú pháp sau. Request.form( element ) [( index)]. Count] Ví dụ -QueryString: Một tập các cặp tên, giá trị được gắn vào URL trong yêu cầu của người dùng, hay tất cả các giá trị của các Control HTML trong phân đoạn FORM được đệ trình khi đặt giá trị của thuộc tinh METHODS là GET. Các tham số có thể được chuyền đến tệp ASP bằng đối tượng FORM. Nhưng trong trường hợp mà dùng dùng các HyperLink mà muốn truyền tham số thì có thể sử dụng cú pháp sau. Vi du . Các tham số truyền vào được phân cách bằng dấu “&”. Vi du: /Scrript/dangnhap. Asp?name=lam&tuoi=23 Sau đó trong tệp ASP thì Request.QueryString ( “name” ) trả về “lam”, Request.QueryString(“23”) -Server Variables: Một tập các giá trị cảu tất cả các header HTTP được gửi từ người dùng cùng với Request, cùng với giá trị của một số biến môi trường được định nghĩa sẵncủa Web Server. 2.4. Response: Được dùng để truy xuất các đáp ứng mà Server tạo ra để gửi ngược về Browser. Nó là các biến HTTP định danh Server và khả năng của nó, thông tin về nội dung được gửi về Browser và bất kỳ các Cookies mới nào sẽ được lưu trên Browser. Các Phương thức ( Methods ) -AddHeader: Thêm một phần Header mới vào HTML Header với một số giá trị chon lọc. phương thức nàu luôn thêm vào chứ không ghi đè lên thông tin có sẵn. Cú pháp: Response.addHeader name, value Vidu Đây là một số đoạn văn bản trên trang Web của bạn Đây là một số đoạn văn bản hay -AppendToLog Thêm một chuỗi voà cuối log file của trình chủ Web Server Cú pháp : AppenToLog(String) -BinaryWrite(Array) Ghi nội dung của Array kiểu Variant vào dòng Output HTTP hiện hành mà không thực hiện bất cứ phép chuyển đổi ký tự nào. -Clear Huỷ bất cứ nội dung trang nào trong bộ đệm khi Response.Buffer bằng True. Không huỷ các Header HTTP. Có thể được sử dụng để bỏ một trang chưa hoàn thành. -Flush: Khi các thông tin được gửi ra bộ đệm kết quả thì những thông tin đó chưa được gửi về ngay Web Browser mà chỉ đến khi dùng phương thức này thì thông tin sẽ được gửi ngay tức khắc về Web Browser. Tuy nhiên cũng sẽ xẩy ra thông baó lỗi Run-time nếu như Response Buffer chưa được dặt giá trị bằng True. -End Ngừng sử lý script ở tệp ASP và trả về Web Browser những kếta quả thu được cho đến lúc xẩy ra phương thức này. -Redỉect: Phương thức này dùng để định hướng địa chỉ của trang Web trên Web Browser trỏ đến một URL khác. -WriteString: Đây là phương thức hay dùng nhất để trả về cho Web Brewser những xâu ký tự mà đại diện cho cấu trúc HTML Ví dụ 2.5. Server. Đối tượng này cung cấp các phường thức cũng như thuộc tính của Server. Các phương thức ( Methods ): -CreateObject: Phương thức này dùng để tạo ra những đối tượng mới nằm trên Server. Phương thức này thương hay sử dụng nhất. -MapPath: Phương thức này sẽ chuyển đường dẫn URL ảo thành đường dẫn vật lý của ổ đĩa trên máy chủ. -Execute(path): Thực thi trang . asp trong đương dẫn Path. -HTMLEnCode(String): Mã hoá chuỗi String thành dạng hiểu và thông dịch được bởi ngôn nhữ HTML. -URLEnCode(String): Mã hoá chuỗi String theo qui tắc chuyển đổi của URL hiểu được bởi các trình duyệt phía máy khách. 2.6. ObjectContext: Dùng đối tượng này để chấp nhận hoặc huỷ bỏ các Transaction được điều khiển bởi Microsoft Transaction Server. Khi mà tệp ASP có chứa từ khoá @ TRANSACTION ở trên đàu tệp thì tệp ASP đó sẽ chạy cho đến khi mà Transaction thực hiện thành công hoặc thất bại. III. Active Data Object ( ADO ) ADO là đối tượng Active X truy nhập dữ liệu mới nhất mà Microsoft đưa ra nhằm hỗ trợ tích cực cho viwcj tương tác với dữ liệu qua bất kỳ một nhà cung cấp co sở dữ liệu nào ( DB Provider ) 1. Các thành phần của ADO. -Conection ( Kết nối ). Dùng để tạo ra ra kết nối với cơ sở dữ liệu cần truy xuất. -Command Đối tượng được tạo từ CSDL bằng việc thực hiệ một câu lẹnh SQL -Parameter: Các tham số gắn liền với đối tượng Command và truyền vào các query có tham số hoặc có thủ tục gắn liền dữ liệu ( Store Produce). -RecordSet: Tập hợp các bản ghi là kết quả của việc mở một bảng dữ liệu hoặc thực hiện một câu lệnh SQL. -Field: Đại diện cho một trường trong dữ liệu với các kiểu dữ liệu thông dụng. -Error: Chứa các lỗi trả về khi thực hiện các thao tác đối với dũ liệu. -Property: Đại diện cho các thuộc tính động của các đối tượng thuộc ADO. 2. Mô hình ADO. Connection Field Field Error Error Command Parameter Parameter Recordset Mỗi đối tượng Connection, Command, Reecrdset và Field đều có phần Properties.Connection Command Recordset Field Properties Property 3. Kết nối với dữ liệu. -Tạo kết nối. Quá trình này dùng đối tượng Connection để tạo ra một kết nối với cơ sở dữ liệu. Dữ liê kết nối được mô tả trong m ột chu ỗi k ết n ối ( Connection String ). Cách chính để tạo ra một kết nối là sử dụng phương thức Open của đối tượng Connection ( Connection.Open ). Hoặc có thể dùng phương thức Recordset.open, phương thức này tạo ra một kết nối và thực hiện câu lệnh kết nối trong cùng một lần thực hiện. Cú pháp như sau : Connection.Open connectionString, UserId,Password,OpenOption Recordset.Open Source, ActivetiConnection,CursorType, LookType, Options ConnectionString có thể đơn giản như sau : “DSN = pubs:uid = sa:pưd = ;database = pubs”. Trong đó mô tả rằng đối tượng Connection sẽ liên kết với file Data Sourse Name tên là PUBS.DSN, mã người dùng là Sa, password là rỗng, tệp cơ sở dữ liệu là PUBS. Ví dụ đầy đủ là : Set DbConn = server. CreatObject(“ADO. Connection”) Dbconn. Open “DSN = pubs:uid = sa;pưd = ; database”. -Tạo ra các đối tượng Command: Bước này có thể có hoặc không vì có thể tạo ra các Recordset bằng cánh sử dụng trực tiếp phương thức Open của Recordset với tham số chứa đối tượng Connection Tạo ra một Commamd đơn giản như sau : Set cmd = server. CreatObject (“ADO. Command”) cmd.CommandText = “Select*from Authours” -Sử dụng các phương thức execute và Open để tạo các Recordset Set OBJbCon = server. CreateObject(“ADODB.Connection”) OBJdbCon. Open”Adworks” SQLQuery = “SELECT*FROM Customer” First Recrdset RSCustomerList Set RSCustomerList = OBJdbcon. Execute ( SQL Query ) Set OBJdbCommand= Server.CreateObject ( “ADODB.Command” ) OBJdbCommand.ActiveConnection=OBJdbCon SQLQuery2= “SELECT* Form Product” OBJdbCommand.CommandText= SQLQuery2 Set RSProductList=OBJdbCommand. Execute Để tạo trực tiếp các RecordSet từ Connection ta dùng cấu trúc như sau: Recordset.Open Sourse, ActiveConnection, CursorType, LookType, Options: Trong đó : Source. Có thể tên là một đối tượng Command, một câu lệnh SQL, tên một Table trong cơ sở dữ liệu, một lời gọi stored procedure. ActiveConnection.Có thể là tên đối tượng Connection đã tạo ra hoặc một chuỗi ConnectionString CursorType. Định nghĩa kiểu con trỏ khi tạo Recordset LookType. Định nghĩa kiểu khoá DL khi tạo Recordset -Một số thuộc tính khác của ADO dùng để lọc và tìm kiếm dữ liệu và di chuyển -Filter: Sử dụng thuộc tính Filter để tạo ra một điều kiện lọc dữ liệu. Điều kiện lọc có thể sử dụng các phép toán logic như END, OR hoặc các toán tử , +, LIKE. Toán tử LIKE là một toán tử khá đặc biệt. Nó cho phép ta lọc theo điều kiện. Dấu “ * ” đại diện cho một chuỗi ký tự bất kỳ. Ví dụ : Name LIKE “ Tom* ”: Lọc tất cả các bản ghi có phần đầu của trường Name là “Tom”. IV. CƠ SỞ DỮ LIỆU ACCESS Hệ thống được xây dựng theo CSDL quan hệ về cơ bản CSDL của hệ thống này chỉ đơn giản các dư liệu văn bản được lưu trữ trên các bảng hay còn gọi là các thực thể. Mỗi bảng là một tập hợp các dòng và cột. Giữa các bảng có thuộc tính liên kết xác định mối quan hệ giữa các đối tượng hay còn gọi là trường khoá. Khoá là một trường hoặc một số trường duy nhất xác định một Record trong bảng. Tập hợp giữa các bảng và các quan hệ giữa chúng thiết lập nên một cơ sở dữ liệu Trong bài luận này em sử dụng microsoft Access để tạo nên cơ sở dữ liệu. Microsoft Access có một giao diện tinh xảo và dẽ dùng, để tạo các đối tượng cơ sở dữ liệu tài vụ có thể dùng Access để: Sửa đổi nội dung một cơ sở dữ liệu : Sửa đổi cơ sở dữ liệu hiện hành rất dễ trong Microsoft Access, ví dụ khi ta tạo một bảng có một trường trong bảng cần phải có độ lớn hơn 100 kí tự. Nếu ta chỉ đơn giản kiểu dữ liệu của nó, Access sẽ lo viẹc chuyển đổi kiểu dữ liệu hiện hành tsang kiểu dữ liệu mới. Sử dụng tính toàn vẹn tham chiéu của Access để duy trì tính nhất quán: Khi các bảng kết nối với nhau thông qua mối quan hệ, dữ liệu trong mỗi bảng phải duy trì sự nhất quán trong các bảng liên kết. Tính toàn vẹn tham chiếu quản lý công việc này bằng cánh theo dõi mối quan hệ giữa các bange và ngăn cấm các kiểu thao tác không nhất quán trên mẩu tin. Điều quan trọng là cơ sở dữ liệu không được trở nên không nhất quán. Khi ta định nghĩa một mối quan hệ chính thức giữa hai bảng, bộ máy cơ sở dữ liệu sẽ giám sát mối quan hệ này và ngăn cấm bất kì hành động nào vi phạm tính toàn vẹn tham chiếu. Hoạt động của cơ chế toàn vẹn tham chiếu là phát sinh ra lỗi mỗi khi ta thi hành một hoạt động nào đó làm cho dữ liệu rơi vào trạng thái không nhất quán. Sử dụng Microsoft Access để tạo mối quan hệ : Microsoft Access cho ta khả năng định nghĩa các mối quan hệ giữa các bảng. Khi ta định nghĩa một mối quan hệ, bộ máy cơ sở dữ liệu sẽ củng cố tính toàn vẹn tham chiếu trong các bảng quan hệ Muốn xây dựng được một CSDL hoàn thiện thì công việc chuẩn hoá là hết sức cần thiết bởi lúc này CSDL được tối ưu hoá, tránh dư thừa dữ liệu và đảm bảo tính độc lập dữ liệu. Nhưng trước tiênta phải biết chuẩn hoá là gì ? Chuẩn hoá là một khái niệm liên quan đênmối quan hệ . Về cơ bản nguyên tắc chuẩn hoá phát biểu rằng các bản cơ sở dữ liệu sẽ loại trừ tính không nhất quán và giảm thiểu sư kém hiệu quả. Các cơ sở dữ liệu được miêu tả là không nhất quán khi dữ liệu trong một bảng không tương ứng với các dữ liệu nhập từ bảng. Một cơ sở dữ liệu kém hiệu quả không cho phép ta trích ra các dữ liệu chính xác như ta muốn. Một cơ sở dữ liệu chứ toàn bộ trong một bảng có thể buộc ta phải vất vả duyệt qua một lượng lớn các khách hàng, địa chỉ để lấy thông tin về một khách hàng nào đó. Mặt khác một cơ sở dữ liệu được chuẩn hoá đày đủ chứa từng mẩu thông tin của cơ sở dữ liệu trong bảng riêng xác định từng mẩu thông tin duy nhất thông qua khoá chính của nó Các cơ sở dữ liệu chuẩn hoá cho phép ta tham chiếu đến một mẩu thông tin trong một bảng bất kì chỉ bằng khoá chính của thông tin đó. Thông thường mọi thứ về ứng dụng cơ sở dữ liệu từ thiết kế bảng cho đến thiết kế truy vấn, từ giao diện người sử dụng cho đến cách hoạt động của báo đều xuất pát từ cách chuẩn hoá cơ sở dữ liệu. Hiện nay, trên thế giới thiết lập nên bảy chuẩn cơ sở dữ liệu nhưng thường thì đạt đến chuẩn ba. Dạng chuẩn ba là dạng thông dụng nhất. Tất cả các cơ sở dữ liệu đều phải dạt chuẩn hành.Đó là tiêu chuẩn công nghệ. Dưới đây là các dạng chuẩn của cơ sở dữ liệu : 1.Dạng chuẩn 1 (1NF): là mức độ khởi đầu của chuẩn hoá cơ sở dữ liệu. Yêu cầu của chuẩn này là cơ sở dữ liệu phải đảm bảo không có nhóm lập lại và chỉ có giá trị duy nhất cho mỗi cặp dòng/cột. 2.Dạng chuẩn 2(2NF): được thiết kế trên chuẩn 1 và có một yêu cầu lad các cột không khoá phải phụ thuộc vào khoá. 3. Dạng chuẩn 3(3NF): là chuẩn 2 và thêm yêu cầu và chỉ có trường khoá mới ảnh hưởng tới trường không khoá, các trường không khoá không được phụ thuộc hàm lẫn nhau. 4.Dạng chuẩn Boyce-Code(BNCF): là chuẩn 3 với yêu cầu là các cột xác định phải chỉ ra duy nhất một bản ghi. 5.Dạng chuẩn 4 (4NF): thiết kết dựa trên chuẩn (BNCF) nhưng nếu có sự phụ thuộc đa trị không hiểu nhiên giữa hai cột A và B thì tất cả các cột khác phải phụ thuộc hàm vào cột A. 6.Dang chuẩn 5(5NF): giải quyết vấn đề về giữ kiệu vòng. 7.Dạng chuẩn miền/khoá : trong trường hợp này sẽ khong có sư bất thường trong quá trình cập nhật giữ liệu. Tên giữ liệu không cần thiết về dữ liệ khác. Xoá dữ liệu không xóa dữ liệu khác. Một dòng cập nhật thì các dàng dư thừa khác không cần cập nhật Chương II – Phân tích và thiết kết hệ thống I. Phân tích và thiết kết dữ liệu 1.Xác định các thực thể 1.1. Thực thể Admin : Lưu trũ thông tin về mật khẩu. Thực thể này bao gồm các thuộc tính sau: Id, Username, Mật khẩu 1.2. Thực thể sản phẩm: Lưu trũ thông tin về các sản phẩm.thực thể này bao gồm các thuộc tính sau : Mã hàng, tên hàng, loại hàng, mô tả, chi tiết, ảnh, ngày sản xuất, 1.3. Thực thể Khách hàng: Lưu trữ thông tin về khách hàng. Thực thể này bao gồm các thuộc tính sau: Mã khách, Họ tên, Địa chỉ, Điện thoại, Email, Username, Mật khẩu. 1.4 Thực thể Đơn đặt hàng Lưu trữ thông tin về đơn hàng. Thực thể này bao gồm các thuộc tính sau: Số đơn hàng, Mã khách, Ngày đặt hàng. 1.5 Thực thể Chi tiết dơn hàng: Lưu trữ thông tin về đơn hàng của khách hàng. Thực thể này bao gồm các thuộc tính sau: Số đơn hàng, Mã hang, Số lượng, STT. 1.6 Thực thể Góp ý: Lưu trữ thông tin phản hồi từ phía khách hàng. Thực thể này bao gồm các thuộc tính sau: Tên khách, Chủ đề phản hồi, Nôi dung, Ngày 2. Mô tả hệ quản trị cơ sở dữ liệu Toàn bộ cơ sở dữ liệu trong phần mềm này được thiết kế dựa trên hệ quản trị CSDL Access 2000. Bao gồm các bảng sau. 2.1 Admin Tên trường Kiểu dữ liệu Độ rộng Mô tả Username Text 10 Tên Mật khẩu Text 10 Mật khẩu 2.2 Sanphan Tên trường Kiểu dữ liệu Độ rộng Mô tả Mahang AutoNumber Auto Mã hàng Loaihang Text 150 Loại hàng Tenhang Text 150 Tên hàng Mota Text 225 Mô tả Anh HyperLink Auto Ảnh Chitiet Meno 500 Chi tiết Giahang Currency 10 Giá hàng Ngaysx Date/ Time Medium Date Ngày SX 2.3. Khachhang Tên trường Kiể dữ liệu Độ rộng Mô tả Makhach AutoNumber Auto Mã khách Hoten Text 50 Tên khách Diachi Text 50 địa chỉ khách Dienthoai Text 50 Số điện thoại Email Text 50 Thư điện tử Username Text 20 Tên truy cập Matkhau Text 20 Mật khẩu 2.4. Dondathang Tên trường Kiểu dữ liệu Độ rộng Mô tả Sodonhang AutoNumber Auto số dơn hàng Makhach Text 50 Mã khách hàng Ngaydatmua Date/time Medium date Ngày đặt mua 2.5. Chitietdonhang Tên trường kiểu dữ liệu Độ rộng Mô tả Stt AutoNumber Auto Sô thứ tự Sodonhang Number Long integer Số đơn hang Mahang Text 20 Mã hàng Soluong Number Long integer số lượng hàng Gia Number Long integer Giá hàng 2.6. Gopy Tên trường kiểu dữ liệu Độ rộng Mô tả Stt AutoNumber Auto số thứ thụ Tenkhach Text 20 Tên khách Chudephanhoi Text 255 chủ đề phản hồi Noidung Text 225 Nội dung góp ý Ngaygui Date/time Medium date Ngày gửi góp ý II. Phân tích và thiết kế trang Web 1. Sơ đồ trang web Đăng ký Đăng nhập Giỏ hàng Tìm kiếm Liên hệ Góp Ý DS Sản phẩm Trang chủ Ứng dụng Đăng nhập Admin Thêm Sản Phẩm Chỉnh Sửa Sản Phẩm Xoá Sản Phẩm Xem sản phẩm Quản Lý Đơn hàng Đặt hàng Đơn hàng Admin 2. Phân tích mô hình hoạt động của trang web 2.1 Đối tượng sử dụng A. Khách vãng lai: Khách vãng lai có thể sử dụng các chức năng: a. Duyệt thông tin trên trang Web thông qua các Hyperlink. b. Tìm kiếm thông tin về 1 sản phẩm bất kỳ. c. Đăng kí nếu khách hàng muốn trở thành thành viên thường xuyên. B.Khách hàng đã đăng ký Gồm các chức năng: - Có các chức năng của khách vãng lai ở trên. - Đăng nhập vào form Login. - Tham gia mua hàng. - Gửi thông tin phảm hồi. a. Các chức năng giống như khách vãng lai: -Duyệt qua Website. -Tìm kiếm thông tin. Ngoài ra còn một số chức năng khác: b.Chức năng đăng nhập: c. Chọn mua sản phẩm: d. Gửi thông tin phản hồi vào website: C. Người quản lý ( Admin) Chức năng của Admin: - Admin có đầy đủ các chức năng của Member, ngoài ra còn có các chức năng khác: 1. Quản lý sản phẩm Phần này admin có các chức năng: kiểm định, xoá sản phẩm. a. Kiểm định sản phẩm b. Xoá sản phẩm c. Thêm sản phẩm vào danh mục hàng hóa. d. Sửa sản phẩm. 2. Quản lý phản hồi từ phía khách hàng Phần này admin sẽ quản lý ý kiến của khách hàng gửi đến và có thể xem, xoá, gửi thông tin phản hồi qua địa chỉ email: a. Xem b. Xoá c. Gửi thông tin phản hồi 3. Quản lý đơn đặt hàng Phần này admin có chức năng : kiểm định đơn đặt hàng. a. Xem thông tin đơn đặt hàng. b. Xoá đơn hàng c. Xử lý đơn hàng: Mỗi khi khách hàng yêu cầu, nhân viên của công ty sẽ giao hàng đến tận tay khách hàng, lúc đó mới kết thúc quá trình xử lý đơn hàng. 4. Quản lý tài khoản khách hàng a. Xem thông tin về khách hàng Chức năng này cho admin xem thông tin về khách hàng b. Đổi Password khách hàng Chức năng này cho admin đổi mật khẩu của khách hàng khi khách hàng yêu cầu c. Xoá tài khoản khách hàng Chức năng này cho admin xoá tài khoản khách hàng 2.2. Chức năng chi tiết 2.2.1 Trang chủ Trong trang chủ định nghĩa một bảng với 3 dòng thẻ định nghĩa các cột. Các mẫu trang được đặt vào từng cột tương ứng bằng thẻ nhúng . Khung trang thực tế được thể hiện như sau Dautrang.asp Loaihang.asp Thantrang.asp Benphai.asp Chantrang.asp Trong trang Dautrang.asp chứa tiêu đề trang, cùng với tên công ty, logo công ty, địa chỉ… Trong trang Loạihang.asp chứa danh sách các loại sản phẩm để khách hàng có thể lựa chon khi muốn xem thông tin vầ sản phẩm đó. Trong trang Thantrang.asp chứa những mặt hàng đặc biệt, những tin tức mới cập nhật … Trong trang Benphai.asp chứa thông tin về những mặt hàng bán chạy nhất, những mặt hàng mời nhất, cùng một số thông tin quảng cáo 2.2.2. Trang danh sách sản phẩm Trang này sẽ hiển thị những sản phẩm trong loại sản phẩm mà khách hàng vừa chọn 2.2.3. Trang chi tiết sản phẩm Trang này sẽ hiên thị đầy đủ thông tin về mặt hàng mà khách hàng vừa chọn 2.2.4. Trang đơn đặt hàng Lưu trữ thông tin về các sản phẩm khách hàng chon mua và có thể thêm hoặc loại bỏ các mặt hàng đã chọn, nếu muốn khách hàng có thể đặt mua các sản phẩm có trong giỏ hàng. 2.2.5 Trang đặt hàng Khi khách hàng quyết định mua hàng thì trang này được gọi ra và đưa ra những thông tin về sản phẩm mà khách hàng vừa chọn đồng thời hen ngày tra hàng cho khách 2.2.6. Trang đăng ký Trang này sẽ tiếp nhận những thông tin khi khách hàng điền vào sau đó lưu vào cơ sở dữ liệu 2.2.7 .Trang đăng nhập Khi khách hàng đã đăng ký trang đăng nhập sẽ hiển thị nó có nhiệm vụ kiểm tra xem thông tin về khách hàng có đúng không và nếu đúng thì sẽ hướng khách hàng đến Trang chủ 3. Giao diện và mã nguồn của một số trang 3.1.Trang chủ a. Giao diện b. Mã nguồn <%Set conn =Server.CreateObject("ADODB.Connection") strconnect="Provider=Microsoft.Jet.OLEDB.4.0; data source =" & Server.Mappath("data/dulieu.mdb") conn.Open strconnect Set rs= Server.CreateObject("ADODB.Recordset") %> Trang chủ 3.2.Trang danh sách sản phẩm a. Giao diện b. Mã nguồn <% Set conn =Server.CreateObject("ADODB.Connection") strconnect="Provider=Microsoft.Jet.OLEDB.4.0; data source =" & Server.Mappath("data/dulieu.mdb") conn.Open strconnect Set rs= Server.CreateObject("ADODB.Recordset") %> Danh sách sản phẩm <% lh=trim(request("loaihang")) SQL="Select * from sanpham Where loaihang='"+lh+"'" rs.open SQL,conn while not rs.eof %> > > >Chi Tiết Giá đ ">Đặt mua sản phẩm này <% rs.MoveNext wend rs.close %>   3.3.Trang chi tiết sản phẩm a. Giao diện b. Mã nguồn <% Set conn =Server.CreateObject("ADODB.Connection") strconnect="Provider=Microsoft.Jet.OLEDB.4.0; data source =" & Server.Mappath("data/dulieu.mdb") conn.Open strconnect Set rs= Server.CreateObject("ADODB.Recordset") %> Chi tiết sản phẩm Thông tin chi tiết <FONT face=Verdana,Arial color=#0057AE size=2> <% mahang=Request.QueryString("mahang") sqlStr="SELECT * FROM sanpham where mahang="+mahang rs.open sqlStr,conn %> Tên sản phẩm > ">Đặt mua sản phẩm này Mã sản phẩm Sản xuất ngày Sản phẩm khác 3.4. Trang giỏ hàng a. Giao diện b. Mã nguồn <% Set conn =Server.CreateObject("ADODB.Connection") strconnect="Provider=Microsoft.Jet.OLEDB.4.0; data source =" & Server.Mappath("data/dulieu.mdb") conn.Open strconnect Set rs= Server.CreateObject("ADODB.Recordset") %> <% if Request("option")="add" then addItem Request("id"),"1" 'response.redirect "ShoppingCart.asp" end if if Request("option")="remove" then removeItem Request("id"),"10000" if Request("option")="clear" then clearAllItem if Request("option")="update" then updateShoppingCart %> Trang đặt hàng Đơn đặt hàng <% if getItemCount"0" then %> Cản ơn bạn đã lựa chọn sản phẩm của Công Ty chúng tôi <% end if %> Để thay đổi số lượng sản phẩm. Thay đổi ô số lượng rồi click Tính Toán Mua hàng| Xoá đơnhàng | Tiếp tục mua Mã hàng Tên hàng Giá bán Giá bán Số lượng Tổng tiền <% SubTotal=0 if session("ProductList")"" then strsql= "select * from sanpham where instr('~'+ltrim(str(mahang))+'~','~" +session("ProductList") +"')>0" rs.open strsql, conn 'Row detail while (not rs.EOF) pid=rs("mahang") %> ' size=3 value= > <% qty=getQuantity(pid) gia=rs("giahang") productTotal=CStr(CInt(qty)*CDbl(gia)) subTotal=subTotal+CDbl(productTotal) Response.write " "+productTotal+"" Response.write " " Response.write " Loại bỏ" Response.write " " Response.write "" rs.MoveNext Wend end if %> <% if subTotal>0 then Response.write "Tổng tiền: "+CStr(subTotal" else Response.write "Chưa có mặt hàng nào được chọn: " end if session("subTotal")=subTotal %>   3.5. Trang đặt hàng a. Giao diện b. Mã nguồn <% Set conn =Server.CreateObject("ADODB.Connection") strconnect="Provider=Microsoft.Jet.OLEDB.4.0; data source =" & Server.Mappath("data/dulieu.mdb") conn.Open strconnect Set rs= Server.CreateObject("ADODB.Recordset") %> Untitled Document <% if session("dangnhap")"true" then Response.Redirect "dangnhap.asp" sqlInsert="INSERT INTO dondathang(makhach, ngaydathang) VALUES ('"+session("username")+"',Date())" conn.execute sqlInsert sqlSelect=" SELECT MAX(sodonhang) AS sodonhang FROM dondathang WHERE makhach='"+session("username")+"'" rs.open sqlSelect,conn sodonhang=rs("sodonhang") rs.close sqlSelect= "select * from sanpham" rs.open sqlSelect,conn while not rs.eof if InStr("~" +session("ProductList"),"~"+ltrim(rs("mahang"))+"~")>0 then pid=rs("mahang") soluong=getQuantity(pid) gia=rs("giahang") sqlInsert="INSERT INTO chitietdonhang(sodonhang, mahang,soluong, gia) VALUES("+CStr(sodonhang)+","+CStr(Pid)+","+CStr(soluong)+","+CStr(gia)+")" conn.execute sqlInsert end if rs.moveNext Wend rs.close %> Cảm ơm bạn ! Mã hàng của bạn là: Chúng tôi gọi điện lại cho bạn để xác minh lại thông tin, nhu cầu của bạn nếu thông tin và nhu cầu là đúng , chúng tôi sẽ giao hàng đến tận tay bạn sau 5 ngày kể từ ngày hôm nay Mã đơn hàng Tên hàng Giá hàng Giá bán Số lượng Tổng tiền <% SubTotal=0 if session("ProductList")"" then strsql= "select * from sanpham" rs.open strsql, conn while (not rs.EOF) if InStr("~" +session("ProductList"),"~"+ltrim(rs("mahang"))+"~")>0 then pid=rs("mahang") %> <% qty=getQuantity(pid) gia=rs("giahang") productTotal=CStr(CInt(qty)*CDbl(gia)) subTotal=subTotal+CDbl(productTotal) Response.write " "+productTotal+"" Response.write "" end if rs.MoveNext Wend end if %>   3.5. Trang quản lý sản phẩm a. Giao diện b. Mã nguồn <% Set conn =Server.CreateObject("ADODB.Connection") strconnect="Provider=Microsoft.Jet.OLEDB.4.0; data source =" & Server.Mappath("../data/dulieu.mdb") conn.Open strconnect Set rs= Server.CreateObject("ADODB.Recordset") %> <% sqlStr="SELECT * FROM sanpham " rs.open sqlStr, conn %> Xem sản phẩm Những sản phẩm hiện có trong cơ sở dũ liệu Thêm sản phẩm mới Mã SP Loại SP Tên SP Mô tả SP Chi tiết SP Ảnh SP Giá SP Ngày SX Chỉnh sửaSP Xoá SP ">Chỉnh sửa ">Xoá <% rs.movenext wend %> 3.6. Trang thêm sản phẩm a. Giao diện b. Mã nguồn Untitled Document Thêm Sản Phẩm Mới Loại hàng Tên hàng Mô tả Chi tiết Giá hàng Ảnh Ngày SX Phần 3: Kết luận và hướng phát triển đề tài Kết luận Websites thương mại điện tử Giới thiệu sản phẩm và bán sản phẩm đĩa CD nhằm mục đích ban đầu là học hỏi và tìm hiểu qua về cách thức hoạt động của một websites thương mại điện tử. Với thời gian cũng như lượng kiến thức có hạn xong Websites thương mại điện tử này cũng đã đạt được một số thành công sau -Chương trình có giao diện thân thiện, dễ sử dụng -Đáp ứng được một phần nhỏ của một Websites thương mại điện tử -Đen tới cho khách hàng những thông tin liên quan đến các loại sản phẩm. Khách hàng có thể đặt mua hàng ngay trên mạng -Dữ liệu luôn luôn được cập nhật -Tạo được kênh thông tin với khách hàng, giúp khách hàng trao đổi thông tin, đóng góp ý kiến cho công ty Tuy nhiên Websites này còn rất nhiều hạn chế so với yêu cầu của một websites bán hàng trên mạng Do hạ tầng thương mại điện tử ở nước ta chưa phát triển nên trong hệ thống của chúng tôi không thực hiện hình thức thanh toán trực tuyến. Giao diện không được đẹp do hạn hẹp về thời gian và chỉ chú trọng đến tính khả chạy của website. Hướng phát triển đề tài -Xây dựng websites với nhiều tính năng chuyên nghiệp hơn, bảo mật tôt hơn -Thiêt kế CSDL trên SQL Server khi CSDL lớn -Có thể thực hiện được việc thanh toán bằng thẻ tín dụng hay chuyển khoản. Mục Lục Mục Lục Trang Chương 1: Cơ sở lý thuyết và công nghệ 3 I. Tổng quát về Internet 3 1. Internet 3 2 . Lợi ích từ Internet: 3 II. Active Server Pages 4 1. Mô hình hoạt động 5 2. Các thành phần chính của ASP 6 III. Active Data Object 11 1. Các thành phần của ADO 11 2.Mô hình ADO 12 3. Kết nối với cơ sở dữ liệu 13 IV. Cơ sở dữ liệu Microsoft Access 15 Chương II. Phân tích thiết kế hệ thống 19 I. Phân tích thiết kế dữ liệu 19 1. Xác định thực thể 19 2. Mô tả thực thể 20 II. Phân tích thiết kế trang Web 22 1. Sơ đồ trang Web 22 2. Mô hình hoạt động của trang Web 22 2.1 Đối tượng sử dụng 22 2.2. Chức năng chi tiết 24 3. Giao diên và mã nguồn một số trang 26 Chương 3: Kết lụân và hướng phát triển đề tài 55 Tµi liÖu tham kh¶o 1-S¸ch ASP3.0 Nhµ xuÊt b¶n gi¸o dôc 2-Gi¸o tr×nh LËp tr×nh INTERNET víi ASP Tr­êng ®¹i häc qu¶n lý vµ kinh doanh Hµ Néi 3-Tù häc thiÕt kÕ trang Web Nhµ xuÊt b¶n thèng kª 4-Access 2000 lËp tr×nh øng dông c¬ së d÷ liÖu Nhµ xuÊt b¶n gi¸o dôc 5-H­íng dÉn thiÕt kÕ trang Web t­¬ng t¸c b»ng Java Script §¹i häc quèc gia Hµ Néi 6-Thùc hµnh thiÕt kÕ trang Web víi Frontpage 2000 Nhµ xuÊt b¶n th«ng tÊn

Các file đính kèm theo tài liệu này:

  • doc37177.doc