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.
56 trang |
Chia sẻ: oanh_nt | Lượt xem: 1636 | Lượt tải: 0
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:
- 37177.doc