Đề tài Xây dựng website bán điện thoại di động – Minhphu mobile

- Một khía cạnh khác giúp để lại kinh nghiệm mua hàng thú vị cho khách hàng trực tuyến chính là giao diện: được hiểu là từ ngữ và hình ảnh mà người mua hàng sẽ tiếp xúc, thay vì người bán hàng thực sự. Trang chủ là trang thể hiện bộ mặt chính của ứng dụng, do vậy các chức năng phải được bố trí hợp lý, tiện lợi cho người dùng khi lựa chọn các chức năng đó - Từ trang chủ người xem có thể liên kết đến các trang nội dung phải nhanh chóng dễ dàng và tiện lợi.

doc62 trang | Chia sẻ: aloso | Lượt xem: 1620 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Đề tài Xây dựng website bán điện thoại di động – Minhphu mobile, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ùng, thiết bị y tế chuyên dụng) và thương mại dịch vụ (như dịch vụ cung cấp thông tin, dịch vụ pháp lý, tài chính); các hoạt động truyền thống (như chăm sóc sức khoẻ, giáo dục) và các hoạt động mới (như siêu thị ảo) 2.1.2. Mục đích khi áp dụng thương mại điện tử Mục đích khi doanh nghiệp áp dụng thương mại điện tử vào sản xuất và kinh doanh chính là mục đích căn bản của bài toán chúng ta đang xử lý. Mục đích của một doanh nghiệp khi áp dụng thương mại điện tử là giảm thiểu chi phí trong doanh nghiệp. Các biện pháp nhằm để giảm thiểu chi phí trước tiên là bao gồm việc tối ưu hóa các quy trình kinh doanh đang tồn tại và thành lập các quy trình mới dựa trên nền tảng của các công nghệ Internet. Thông qua việc tích hợp này của các tính năng doanh nghiệp dọc theo chuỗi giá trị, việc tiến hành kinh doanh có hiệu quả cao hơn. Các lợi thế cho doanh nghiệp có thể là: Tiết kiệm chi phí đầu tư: Phí đầu tư tích hợp cổng tiết kiệm hơn so với việc thuê cửa hàng giới thiệu sản phẩm, văn phòng đại diện Linh hoạt trong kinh doanh: Công nghệ cổng thanh toán cung cấp khả năng giải quyết các tình huống kinh doanh phức tạp, quản lý hiệu quả sản phẩm và thông tin khách hàng Giúp cho các Doanh nghiệp nắm được thông tin phong phú về thị trường và đối tác Giúp giảm chi phí sản xuất. Giúp giảm chi phí bán hàng và quảng cáo tiếp thị sản phẩm Khả năng giao tiếp mới với khách hàng Khách hàng hài lòng hơn Nâng cao hình ảnh của doanh nghiệp Khai thác các kênh bán hàng mới Có thêm khách hàng mới Tăng doanh thu, hiệu quả 2.1.3. Khái niệm về Website thương mại điện tử Cửa hàng trực tuyến đưa hàng vào trong Internet để giới thiệu và bán. Đây là một chương trình phần mềm có tính năng giỏ hàng. Người mua chọn lựa các sản phẩm và đặt chúng vào giỏ hàng. Đằng sau một cửa hàng trực tuyến như thế là một việc kinh doanh thật sự, tiến hành các đơn đặt hàng. Có nhiều chương trình phần mềm cho kênh bán hàng này. Một cửa hàng trực tuyến hiện đại không chỉ tạo khả năng cho người dùng xem món hàng hai chiều và đọc một ít thông số kỹ thuật của món hàng đó. Trong lãnh vực hàng tiêu dùng cao cấp người ta cũng đã tạo ảnh ba chiều của sản phẩm để cảm giác của khách hàng càng gần hiện thực càng tốt. Ngoài ra còn có các chương trình cấu hình mà qua đó màu sắc, trang bị và thiết kế của sản phẩm có thể thay đổi để phù hợp với tưởng tượng cá nhân của từng khách hàng. Bằng cách này người sản xuất hay người chào bán còn có thêm thông tin rất có giá trị về ý thích của khách hàng. Các hình thức được biết nhiều của thương mại điện tử là mua bán sách và nhạc cũng như mua bán đấu giá trong Internet. Thông qua việc Internet bùng nổ vào cuối thập niên 1990, cửa hàng trực tuyến ngày càng có tầm quan trọng nhiều hơn. Những người bán hàng trong Internet có lợi thế là họ không cần đến một diện tích bán hàng thật sự mà thông qua các trang Web sử dụng một không gian bán hàng ảo. Các cửa hàng trực tuyến cũng thường hay không cần đến nhà kho hay chỉ cần đến rất ít, vì thường có thể cung cấp cho khách hàng trực tiếp từ người sản xuất hay có thể đặt hàng theo nhu cầu. Lợi thế do tiết kiệm được những phí tổn cố định này có thể được tiếp tục chuyển tiếp cho khách hàng. Ngay cả những người bán sách trong Internet tại Đức, bắt buộc phải bán sách theo giá cố định, cũng vẫn có lợi thế là - thông qua việc không thu tiền cước phí gửi - tiết kiệm được cho khách hàng một chuyến đi đến nhà bán sách mà vẫn có cùng một giá. Các ngành hưởng lợi của xu hướng này, bên cạnh các cửa hàng trực tuyến, đặc biệt là các doanh nghiệp tiếp vận và các dịch vụ phân phối, trong khi các doanh nghiệp bán hàng nhỏ lẻ thường là những người thua cuộc trong biến đổi này. Ngành công nghệ thông tin cũng hưởng lợi gián tiếp từ tăng trưởng của thương mại Internet thông qua các đơn đặt hàng nhiều hơn cho việc cung ứng kỹ thuật cũng như bảo trì các cửa hàng trực tuyến. 2.2. Cơ sở lý thuyết để giải quyết bài toán Ngày nay trên toàn thế giới có rất nhiều các công cụ lập trình giúp các lập trình viên xây dựng ứng dụng nhanh chóng và tiện lợi. Tuy nhiên xu thế hiện đang phân chia làm loại công cụ chính đó là: Nhóm công cụ phát triển trên môi trường .NET của Microsoft như: Visual Studio 6.0, Visual Studio.NET, hệ quản trị CSDL SQL server, Microsoft Access Nhóm công cụ mã nguồn mở phát triển trên môi trường Java như: Java, Jdeveloper , Jbuilder, JSP, Struts, Oracle… Mỗi nhóm công cụ đểu có những ưu điểm và nhược điểm khác nhau, tùy theo mức độ, phạm vi và thói quen của người lập trình mà lựa chọn công cụ phù hợp để xây dựng ứng dụng. Trong đề tài này tôi sử dụng công cụ lập trình Web ASP và hệ quản trị cơ sở dữ liệu Access để xây dựng trang web bán hàng di động. 2.2.1. Công cụ để tiến hành giải quyết bài toán 2.2.1.1. Công cụ quản lý cơ sở dữ liệu Access a. Một số khái niệm Một trong những tài sản lớn nhất mà ASP có được là khả năng thâm nhập vào các cơ sở dữ liệu. ASP thường làm việc với hai người bạn đồng nghiệp là Access và hệ cơ sở dữ liệu SQL.Component rất hữu ích giúp chúng ta có thể kết nối vào một cơ sở dữ liệu bằng cách sử dụng ActiveX Data Object để viết nội dung lên màn hình trình duyệt và tạo lập hoặc cập nhật các file cơ sở dữ liệu. Cơ sở dữ liệu là một phần không thể thiếu của một bài toán quản lý áp dụng công nghệ thông tin. Cơ sở dữ liệu được định nghĩa là kho thông tin về một chủ đề, được tổ chức hợp lý để dễ dàng quản lý và truy tìm. Bất kỳ kho thông tin nào đáp ứng được yêu cầu này đều có thể coi là một cơ sở dữ liệu. b. Quản trị cơ sở dữ liệu Chương trình quản trị cơ sở dữ liệu là một chương trình ứng dụng trên máy tính có các công cụ để truy tìm, sửa chữa, xoá và chèn thêm dữ liệu. Các chương trình này cũng có thể dùng để tạo lập một cơ sở dữ liệu và tạo ra các báo cáo, thống kê. Các chương trình quản trị cơ sở dữ liệu liên quan khá thông dụng hiện nay tại Việt Nam là Foxpro, Access cho ứng dụng nhỏ, DBL, MSSQL và Oracle cho ứng dụng vừa và lớn. Cơ sở dữ liệu (database): kho thông tin về một chủ đề, được tổ chức hợp lý để dễ dàng quản lý và truy tìm. Bất kỳ kho thông tin nào đáp ứng được yêu cầu này đều có thể coi là một cơ sở dữ liệu (CSDL). Như trên đây, bạn có hai cơ sở dữ liệu: CSDL người quen ghi trong sổ và CSDL trên máy tính. Thông thường, những thông tin trong CSDL được chia thành nhiều mẫu tin có cấu trúc tương đối giống nhau Bảng (table): Là một thành phần cơ bản trong chương trình quản trị cơ sở dữ liệu quan hệ. Bảng được hình thành khi sắp xếp các thông tin có liên quan với nhau theo hàng và cột. Các hàng tương ứng với các bản ghi (record) dữ liệu và các cột tương ứng với trường dữ liệu. Các bạn hãy xem bảng Người quen. Các hàng là người, mỗi hàng tương ứng với một người. Các cột là trường (hay lĩnh vực) của thông tin. Ta có các cột Họ tên, Ngày sinh, Điện thoại, Địa chỉ, Tên cơ quan. Bản ghi (record): trong chương trình quản trị cơ sở dữ liệu, đây là một đơn vị hoàn chỉnh nhỏ nhất của dữ liệu, được lưu trữ trong những trường hợp dữ liệu đã được đặt tên. Trong một cơ sở dữ liệu dạng bảng, bản ghi dữ liệu đồng nghĩa với hàng (row). Bản ghi chứa tất cả các thông tin có liên quan với mẫu tin mà cơ sở dữ liệu đang theo dõi. Ví dụ, trong cơ sở dữ liệu về Người quen, bản ghi sẽ liệt kê tên người quen, số điện thoại, ngày sinh, địa chỉ và tên cơ quan. Hầu hết các chương trình đều hiển thị các bản ghi dữ liệu theo hai cách: theo các mẫu nhập dữ liệu và theo các bảng dữ liệu. Các bản ghi dữ liệu được hiển thị dưới dạng các hàng ngang và mỗi trường dữ liệu là một cột. Trường dữ liệu (field): trong chương trình quản trị cơ sở dữ liệu, đây là không gian dành cho một mẫu thông tin trong bản ghi dữ liệu. Trong chương trình quản trị CSDL dạng bảng với dữ liệu được tổ chức theo hàng và cột, thì trường dữ liệu tương ứng với các cột. Như ở bảng Cơ quan, ta có các trường Tên cơ quan, Địa chỉ, Thành phố, Số điện thoại, Lĩnh vực hoạt động. Quản lý cơ sở dữ liệu quan hệ: là một cách quản lý cơ sở dữ liệu, trong đó dữ liệu được lưu trữ trong các bảng dữ liệu hai chiều gồm các cột và các hàng, có thể liên quan với nhau nếu các bảng đó có một cột hoặc một trường chung nhau.Chương trình quản trị cơ sở dữ liệu: một chương trình ứng dụng trên máy tính cung cấp các công cụ để truy tìm, sửa chữa, xóa và chèn thêm dữ liệu. Các chương trình này cũng có thể dùng để thành lập một cơ sở dữ liệu và tạo ra các báo cáo, thống kê. Các chương trình quản trị cơ sở dữ liệu liên quan khá thông dụng hiện nay tại Việt Nam là Foxpro, Access cho ứng dụng nhỏ, DB 2, MS SQL và Oracle cho ứng dụng vừa và lớn. Quản trị cơ sở dữ liệu Microsoft Access quan hệ là một cách quản lý cơ sở dữ liệu trong đó dữ liệu được lưu trữ trong các bảng dữ liệu hai chiều gồm các cột và các hàng, có thể liên quan với nhau nếu các bảng đó có một cột hoặc một trường chung nhau. Hệ quản trị cơ sở dữ liệu Microsoft Access là một quá trình xử lý xoay quanh các vấn đề sau đây: Lưu trữ dữ liệu Truy nhập dữ liệu Bảo đảm tính toàn vẹn của dữ liệu Ba vấn đề chính ở trên có mối quan hệ mật thiết, phụ thuộc lẫn nhau và chúng được liệt kê theo thứ tự thực hiện mỗi ứng dụng. Mô hình cơ sở dữ liệu quan hệ (Relationship Database Management System - RDMS) được xây dựng làm đơn giản hoá quá trình lưu và đọc dữ liệu RDMS cung cấp khả năng giao tiếp tốt với dữ liệu và giúp người lập trình tự do trong lĩnh vực quản lý truy cập cơ sở dữ liệu. Sau đây là các bước xây dựng một cơ sở dữ liệu theo mô hình cơ sở dữ liệu quan hệ: Tổ chức dữ liệu theo nhóm logic (table) Xác định các mối quan hệ giữa các table Tạo tập tin cơ sở dữ liệu và định nghĩa cấu trúc của các table trong cơ sở dữ liệu. Lưu dữ liệu Hai bước đầu là hai bước thiết kế cơ sở dữ liệu và đây là hai bước cực kỳ quan trọng. Nếu được thiết kế tốt, các khía cạnh khác sẽ được giải quyết dễ dàng hơn; ngược lại việc khai thác cơ sở dữ liệu sẽ không hiệu quả và chương trình sẽ có những lỗi rất khó phát hiện. Các bước chính khi tiến hành thiết kế một cơ sở dữ liệu: Xác định dữ liệu cần trong ứng dụng Xác định nguồn gốc dữ liệu Tổ chức dữ liệu thành các nhóm logic Tiêu chuẩn hoá dữ liệu và các mối quan hệ giữa chúng Xác định cách sử dụng các bảng 2.2.1.2. Công cụ lập trình Website a. Ngôn ngữ HTML Sơ lược về HTML HTML là ngôn ngữ định dạng, hay đánh dấu. HTML là viết tắt của HyperText Markup Language (ngôn ngữ đánh dấu siêu văn bản). Một Một tập tin .html (file) được đánh dấu bằng các thẻ (tag). Các thẻ HTML sẽ quy định cách hiển thị trên trình duyệt. HTML cho phép người ta đọc được chúng trên máy của mình qua mạng bằng trình duyệt Web.Thẻ là một đoạn mà được giới hạn bởi dấu ngoặc nhọn ''. HTML thực hiện định dạng tập tin HTML trên màn hình. HTML không đưa ra bất cứ mô tả nào về font, hình ảnh đồ hoạ và chỗ để đặt chúng. HTML chỉ gán thẻ cho nội dung tập tin với những thuộc tính nào đó mà sau đó chúng được xác định bởi trình duyệt để xem tập tin này. File định dạng HTML phải được ghi lại với phần mở rộng là .html hoặc .htm HTML gán thẻ cho kiểu chữ, chèn file ảnh đồ hoạ, âm thanh, video vào văn bản, tạo ra mối liên kết bằng hình thức gọi là siêu văn bản. Siêu văn bản là đặc tính quan trọng nhất của ngôn ngữ HTML, điều này có nghĩa là một đoạn văn bản hay đồ hoạ bất kỳ nào cũng có thể liên kết với một tài liêụ HTML khác. Ngôn ngữ HTML chính thức là một bộ đặc biệt bao gồm các thẻ, mà tất cả các trình duyệt đều có thể hiểu được. Một số trình duyệt còn có thể biên dịch được những thẻ bổ sung ngoài phần tiêu chuẩn. Theo thời gian, bộ chuẩn được cập nhật những thẻ mới. Để soạn thảo một file HTML chúng ta có thể dùng bất kỳ một trình soạn thảo đơn giản nào (notepad, pspad, word,...). Các thẻ cơ bản của HTML Có hai loại thẻ cơ bản: thẻ mang thông tin (container tag) và thẻ rỗng (empty tag). Thẻ rỗng là một thẻ không tác động lên cái gì cả. Chúng thường một mình thùc hiện một nhiệm vụ rất đặc biệt, không ảnh hưởng đoạn chữ nào. Ví dụ, tạo một đường kẻ ngang. Đối với thẻ mang thông tin, khi có một thẻ mở thì phải có một thẻ đóng tương ứng, thẻ đóng giống như thẻ mở nhưng trước nó có gạch chéo (/). Ví dụ, thẻ mở cho kiểu chữ in nghiêng là , và thẻ đóng tương ứng là . Cấu trúc cơ bản của một trang HTML ………….. b. Ngôn ngữ ASP (Active Server Page) Khái niệm ASP (Active Server Page) Microsoft Active Server Pages (ASP) không hẳn là một ngôn ngữ lập trình , Microsoft gọi ASP là môi trường kịch bản trên máy chủ (Server-Side Scripting Enviroment), môi trường này cho phép tạo và chạy các các ứng dụng Web server động , tương tác và có hiệu quả cao. Các đoạn chương trình nhỏ được gọi là Script sẽ được nhúng vào các trang của ASP phục vụ cho việc đóng mở và thao tác với dữ liệu cũng như điều khiển, có tính bảo mật cao và làm tăng khả năng giao tiếp của chương trình ứng dụng. Ðể làm việc trong môi trường này , các ASP coder thường sử dụng VBScript hoặc JavaScript, cả hai loại này đều tự động hỗ trợ ASP Các đoạn ASP script có thể xuất hiện ở mọi nơi trong trang HTML, ASP & HTML có sự gắn bó chặt chẽ với nhau. Với ASP ta có thể chen các script thực thi được vào trực tiếp các file HTML . Khi đó việc tạo ra trang HTML và xử lý script trở nên đồng thời, điều này cho phép tạo ra các tương tác của Web site một cách linh hoạt uyển chuyển , có thể chen các thành phần HTML động vào trang Web tùy vào từng trường hợp cụ thể. ASP cung cấp một môi trường cho các công cụ đặc tả và phân tích các script trong một file .ASP để các công cụ này xử lý. ASP còn cho phép viết hoàn chỉnh các thủ tục để phát triển Web bằng nhiều ngôn ngữ Script mà trình duyệt có thể hiểu được tất cả. Trên thực tế, vài ngôn ngữ Script được sử dụng trong một file và nó được thực hiện bằng cách định nghĩa ngôn ngữ Script trong một trang của HTML tại nơi bắt đầu thủ tục Script. ASP xây dựng các file ở khắp nơi với phần đuôi mở rộng là *.asp. File .asp là một file text và có thể bao gồm các sự kết hợp sau: Text Các trang của HTML Các câu lệnh của Script Mô tả của ASP Cách hoạt động của mô hình ASP được mô tả tóm tắt qua 3 bước sau: Một ASP bắt đầu chạy khi trình duyệt yêu cầu một file. asp cho Web Server. File. asp đó được nạp vào bộ nhớ và thực hiện (tại máy chủ). Các đoạn chương trình Script trong file. asp đó có thể là mở dữ liệu, thao tác với dữ liệu để lấy những thông tin mà người dùng cần đến. Trong giai đoạn này, file. asp đó cũng xác định xem là đoạn script nào chạy trên máy người sử dụng. Sau khi thực hiện xong thì kết quả thực hiện của file. asp đó sẽ được trả về cho Web Server Browser của người sử dụng dưới dạng trang Web tĩnh. Cú pháp của ASP: ASP không phải là ngôn ngữ Scripting mà thực ra nó cung cấp một môi trường để xử lý các Script có trong trang HTML. Sau đây là một số quy tắc và cú pháp của ASP. Phân định ranh giới (Delimiter): Các trang của HTML được phân định với text dựa vào các phân định ranh giới. Một phân định ranh giới là một ký tự hay các thứ tự đánh dấu điểm bắt đầu và kết thúc của một đơn vị. Trong trường hợp của HTML, các ký hiệu ranh giới (). Tương tự, các lệnh của Script ASP và các biểu thức đầu ra được phân biệt giữa text và các trang HTML bằng các phân định ranh giới ASP sử dụng phân định ranh giới là để chứa các lệnh Script. VD: tức là gán giá trị football cho biến sport. ASP sử dụng phân định ranh giới là để chứa các biểu thức đầu ra. Như VD trên, biểu thức đầu ra sẽ gửi giá trị football (giá trị hiện thời của biến) cho trình duyệt. Các tính chất và ưu điểm của ASP Các ASP script thông thường chạy trên các server cài IIS ( Microsoft Internet Information Server). Nhưng ASPvẫn có thể làm việc với đa số các Web server trên NT (Netscape, Oreilly ) sử dụng ChiliSoft ASP, có thể trên một số hệ điều hành khác nh Linux, SunSolaris. Quy trình thực hiện một của ASP như sau : khi một user thông qua trình duyệt web gửi yêu cầu tới một file .asp ở server thì script chứa trong file đó sẽ được chạy trên server và trả kết quả về cho browser đó. Khi Web server nhận được yêu cầu tới một file .asp thì nó sẽ đọc từ đầu tới cuối file .asp đó, thực hiện các lệnh script trong đó và trả kết quả về cho Web brower là một trang HTML. Thực ra thì quá trình tạo trang HTML và thực thi script là hai quá trình riêng biệt, script sẽ được ASP engine dịch và thực thi trước khi chuyển kết quả cho Web server, tới giai đoạn này các mã HTML và kết quả sẽ kết hợp để tạo nên một trang Web. Việc nhúng HTML và script chỉ để làm đẩy nhanh tốc độ phát triển ứng dụng mà thôi. Do môi trường hoạt động là mạng nên một script ASP khi được viết ra có thể sử dụng được ở mọi nơi, không cần trình biên dịch hay kết nối. Các ASP script được viết dựa trên các ngôn ngữ hướng đối tượng nên rất tiện lợi, sẵn có các object đi kèm như: Request, Response, Application, Server, Session. Tận dụng được các ActiveX components như : Database access , Content linking, Collaboration Data Object, Browser capabilities,File Access, ... Hơn nữa nó cũng có thể tận dụng được components từ các nhà phân phối khác, cung cấp dưới dạng các file .dll Những tính chất trên đem đến cho ta những lợi ích xác thực, cho phép tạo ra các ứng dụng Web thương mại có tương tác chứ không chỉ đơn thuần là phổ biến các nội dung tĩnh. Ví dụ như để lưu giữ lại thông tin về các khách hàng đã ghé thăm qua web site của mình, các web builder có thế dùng asp để tạo ra các file cơ sở dữ liệu khách hàng lưu trên máy chủ, khi cần có thể tiện tra cứu. • Các Objects & Components cơ bản Object là những đoạn chương trình có khả năng thực hiện những công việc cơ bản nào đó. Mỗi object là một kết hợp giữa lập trình và dữ liệu mà có thể xử lý như một đơn vị thống nhất. Các ASP object cho phép chúng ta giao tiếp tương tác với cả máy chủ lẫn trình duyệt, thông thường chúng ta dùng vài object trong các scripts. Các object này đã sẵn có nên ta chỉ cần nhớ cách sử dụng chúng. Request Object: Request object cho phép lấy thông tin thông qua một HTTP request. Chúng ta có thể dùng Request object để đọc URL, truy cập thông tin từ một form, đọc cookies và các HTTP header. Response Object: Ressponse object là chìa khóa để gửi thông tin tới user, là đại diện cho phần thông tin do server trả về cho Web browser. Chúng ta có thể viết lên màn hình, tái định hướng các trang, tạo các cookies sử dụng Response object. Application Object: Sử dụng Application object chúng ta có thể điều khiển các đặc tính liên quan đến đến việc khởi động và dừng ứng dụng, cũng như việc lưu trữ các thông tin có thể được truy nhập bỏi các ứng dụng nói chung. Server Object: Server object cho phép thực thi một chuỗi các tác vụ chẳng hạn như ánh xạ một đường dẫn ảo tới một đường dẫn vật lý và tạo một instance của một componnet. Session Object: Sử dụng object này chúng ta có thể lưu thông tin liên quan tới từng user đã truy nhập vào site của bạn. Khác với các object, các ASP components là các điều khiển ActiveX ghép nối với ASP để đơn giản hoá các thủ tục thông thường. Chúng ta sẽ lướt qua số components thường được sử dụng. Browser Capabilities: Component này cho phép xác định trình duyệt của user là gì và những tính năng nào được hỗ trợ bởi trình duyệt đó. Collaboration Data Objects (CDO): CDO được liên kết chặt chẽ vói IIS SMTP server, CDO hỗ trợ chúng ta gửi và nhận email. Ví dụ với CDO chúng ta có thể xử lý một form mà không cần nhận biết đó là Perl script hay CGI. CHƯƠNG III: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG A: Phân tích sơ đồ phân cấp chức năng của hệ thống 3.1.1 Yêu cầu cần thiết của bài toán Trang Web thương mại điện tử bán điện thoại di động – MINH PHÚ mobile phải đáp ứng những yêu cầu cần thiết sau: Đối với các khách hàng khi truy cập vào trang Web: - Trang web phải có mục riêng để giới thiệu về công ty, địa chỉ liên hệ…để Khi họ truy cập vào trang Web họ có thể xem thông tin về công ty như: Quá trình hình thành, hoạt động kinh doanh, đối tác của công ty cũng như năng lực làm việc của công ty qua những hợp đồng đã ký kết. Thông tin về sản phẩm - dịch vụ, thông tin chi tiết từng sản phẩm cũng như tham khảo giá cả của các mặt hàng - Trang web có phần tin tức về thị trường, thông tin khuyễn mãi… giúp khách hàng có đầy đủ thông tin, có thêm kiến thức nhằm giúp người mua chọn được sản phẩm ưng ý nhất. - Yêu cầu được xem các thông tin về các sản phẩm, thông tin chi tiết về sản phẩm như tính năng, mẫu mã, kích thước của sản phẩm điện thoại … - Chức năng tìm kiếm: Chức năng này giúp khách hàng nhanh chóng tìm được sản phẩm và các tin tức đã đăng. - Chức năng đặt hàng qua trang Web: Điều quan trọng nhất là khách hàng còn đặt hàng hoá mà họ muốn. Đó là những thông tin cần thiết cho việc mua bán qua Website. Đây là phần quan trọng nhất của website thương mại điên tử, do vậy cần phải thiết kế sao cho khách hàng có thể chọn hàng và đặt được hàng theo yêu cầu của mình một cách dễ dàng thuận tiện và nhanh chóng. Phần này phải kết hợp với phần giới thiệu sản phẩm một cách linh hoạt giúp khách hàng có đầy đủ thông tin về sản phẩm trước khi chọn - Ngoài ra họ có thể hỏi ý kiến của công ty về kỹ thuật mà họ muốn biết, đó là các vấn đề liên quan sử dụng, bảo quản, sửa chữa, chế độ bảo hành. Đối với người quản trị, ban lãnh đạo công ty: - Từ những đơn đặt hàng của công ty họ có thể theo dõi tình hình đặt mua sản phẩm của khách hàng, họ có thể kiểm tra các đối tượng khách hàng để từ đó có những hướng đi tốt cho công ty. Ngoài ra họ có thể cung cấp các thông tin về kỹ thuật khi khách hàng yêu cầu… - Yêu cầu của website là người quản trị dễ dàng thêm, sửa, xoá thông tin, danh mục gồm: danh mục thông tin về sản phẩm và dịch vụ, danh mục tin tức và câu hỏi hỗ trợ, danh mục người quản trị, danh mục để quản lý các thông tin của thành viên…. - Chức năng xử lý đơn đặt hàng: Hiện thi được danh sách khách hàng đã đặt hàng, xoá đơn đặt hàng sai quy cách của khách hàng. Hiện thị đầy đủ thông tin giỏ hàng mà khách đã đăng ký mua. Đối với bộ phận kinh doanh: - Cần phải cập nhật và thay đổi các thông tin về sản phẩm - dịch vụ, thông tin thị trường, bảo hành…, Ngoài ra cần phải tập hợp các đơn đặt hàng của khách để xử lý. 3.1.2. Sơ đồ phân cấp chức năng Sơ đồ phân cấp chức năng cho ta cái nhìn tổng quát về các chức năng chính của hệ thống, nó giúp xác định phạm vi của hệ thống cần phân tích và tăng cường cách tiếp cận logic tới phân tích hệ thống Hệ thống bao gồm các chức năng chính: - Quản lý bán hàng: giới thiệu các tính năng giá cả của sản phẩm Với việc phân tích yêu cầu của bài toán theo các mục trên ta cần phải thiết kế Website gồm các chức năng chính sau: (Hình 3.1) Quản lý Website phu mobile Quản lý bán hàng Xem thông tin và chọn hàng Tìm kiếm sản phẩm Quản lý thông tin Giới thiệu công ty, liên hệ Quản lý tin tức, giải trí, Hỗ trợ giải đáp khuyễn mãi, bảo hành Đặt hàng Quản lý đơn đặt hàng Quản lý thành viên quản trị, members Quản trị hệ thống Cập nhật danh mục sản phẩm dich vụ Quản lý liên kết quảng cáo Quản lý đơn đặt hàng từ các khách hàng gửi đến Hình 3.1: Sơ đồ chức năng của hệ thống website Trong 1 số chức năng ta lại có thể có biểu đồ phân cấp thành những chức năng nhỏ hơn. Ví dụ như Biểu đồ phân cấp chức năng Tìm kiếm Tìm Kiếm Sản Phẩm Nhận thông tin cần tìm kiếm Kiểm tra thông tin nhận được Cung cấp thông tin tìm được 3.2. Thiết kế cơ sở dữ liệu 3.2.1. Sơ đồ luồng thông tin Sơ đồ luồng thông tin được dùng để mô tả hệ thống thông tin theo cách thức động. Tức là mô tả sự di chuyển của dữ liệu, việc xử lý, việc lưu trữ trong thế giới vật lý bằng sơ đồ Các ký pháp của sơ đồ luồng thông tin như sau: - Xử lý Thủ công Giao tác người - máy Tin học hoá hoàn toàn - Kho lưu trữ dữ liệu Thủ công Tin học hoá - Dòng thông tin Tài liệu - Điều khiển Từ những ký pháp trên, sau đây sẽ là sơ đồ luồng thông tin thể hiện hoạt động đặt hàng trên mạng (Hình 3.2): Thời điểm Khách hàng truy cập vào website Hệ thống website Phòng bán hàng Bắt đầu vào trang web Đặt hàng Sau khi đặt mua hàng Đơn đặt hàng Giới thiệu hàng Tổng hợp đơn đặt hàng In đơn đặt hàng Hoá đơn Kiểm tra đơn đặt hàng Đặt hàng Giỏ hàng Mua hàng Sản phẩm Tổng hợp đơn đặt hàng Thông tin hàng Cập nhật thông tin hàng Hình 3.2: sơ đồ luồng thông tin thể hiện hoạt động đặt hàng trên mạng 3.2.2. Sơ đồ luồng dữ liệu Sơ đồ luồng dữ liệu dùng để mô tả cũng chính hệ thống thông tin như sơ đồ luồng thông tin nhưng trên góc độ trừu tượng. Trên sơ đồ chỉ ra bao gồm Các luồng dữ liệu, các xử lý, các lưu trữ dữ liệu, nguồn và đích nhưng không hề quan tâm tới nơi, địa điểm và đối tượng chịu trách nhiệm xử lý. Sơ đồ luồng dữ liệu chỉ mô tả đơn thuần hệ thống thông tin làm gì và để làm gì. Vai trò của luồng thông tin Mô hình luồng dữ liệu cho ta một cái nhìn tổng thể về hệ thống có quan điểm cân xứng cho cả dữ liệu và quá trình. Nó chỉ ra các thông tin chuyển tiếp từ một quá trình hoặc chức năng nào trong hệ thống sang quá trình hoặc chức năng khác. Điều quan trọng nhất là nó chỉ ra cần có những thông tin vào trước khi cho nó thực hiện một chức năng hay quá trình. Giải thích các ký hiệu - Ký hiệu : Biểu thị luồng thông tin. Tên là một danh từ. - Ký hiệu : Biểu thị chức năng xử lý thông tin. Trong sơ đồ này được chỉ ra một chức năng hoặc một quá trình chức năng quan trọng trong mô hình luồng dữ liệu là biến đổi thông tin, nghĩa là thay đổi thông tin từ đầu vào theo một cách tạo nào đó như tổ chức lại thông tin mới. Tên chức năng trong biểu đồ luồng dữ liệu phải trùng tên với tên của chức năng trong biểu đồ phân cấp chức năng. Tên là động từ + bổ ngữ. - Ký hiệu : Biểu thị cho các tác nhân ngoài. Tác nhân ngoài là các tổ chức hoặc cá nhân nằm ngoài hệ thống nhưng có trao đổi trực tiếp với hệ thống, sự có mặt của các nhân tố này trên sơ đồ chỉ ra giới hạn của hệ thống, định rõ mối quan hệ của hệ thống với thế giới bên ngoài. Tên gọi là một danh từ - Ký hiệu : Biểu thị kho dữ liệu. Biểu diễn cho thông tin cần cất giữ sau đó để một hay nhiều chức năng sử dụng chúng trong một khoảng thời gian khai thác để lấy thông tin ra xử lý hoặc cập nhật chúng. Chúng có thể là một tệp dữ liệu được lưu trữ trong văn phòng hoặc được lưu trữ trong máy vi tính. Luồng dữ liệu ra vào kho có thể ghi hoặc không ghi. Không có những thông tin nối giữa hai kho. Tên kho là một danh từ + tính từ (có thể). - Ký hiệu : Biểu thị tác nhân trong. Tác nhân trong là một chức năng xử lý nào đó hoặc một hệ thống con của hệ thống đang xét có trao đổi thông tin và các chức năng trong mô hình được mô tả ở trang khác của quá trình. Mọi mô hình luồng dữ liệu đều có thể bao gồm nhiều trang thông tin được truyền giữa các trang khác nhau được chỉ ra nhờ ký hiệu này. Tên gồm động từ + bổ ngữ. Các mức của DFD - Sơ đồ ngữ cảnh (Context Diagram) thể hiện rất khái quát nội dung chính của hệ thống thông tin. Sơ đồ này không đi vào chi tiết, mà mô tả sao cho chỉ cần một lần nhìn là nhận ra nội dung chính của hệ thống. Để sao cho sơ đồ ngữ cảnh sáng sủa, dễ nhìn có thể bỏ phần các kho dữ liệu; bỏ qua các xử lý cập nhật. Sơ đồ khung cảnh còn được gọi là sơ đồ mức 0 (Hình 3.2) Khách hàng Đặt hàng Thông tin Công ty Minh Phu Thông tin Báo cáo Hệ thống website TMĐT Minh Phu mobile Hình 3.3: Sơ đồ mức 0 - Phân rã sơ đồ: Để mô tả hệ thống chi tiết hơn người ta dùng kỹ thuật phân rã (Explosion) sơ đồ. Bắt đầu từ sơ đồ khung cảnh, người ta phân rã ra thành sơ đồ mức 0, tiếp sau mức 0 là mức 1... Thông tin của khách hàng Đặt hàng Thông tin sản phẩm, dich vụ Công ty Minh Phu Cập nhật thông tin sản phẩm, dich vụ Báo cáo Quản lý thông tin Khách hàng Liên hệ, hỏi đáp Thông tin thị trường, tin phản hồi Cập nhật thông tin Kho dữ liệu Quản quản trị hệ thống Câp nhật Quản lý bán hàng Hình 3.4: Sơ đồ mức 1 3.2.3. Xác định danh sách các loại thực thể 3.2.3.1. Khái niệm về thực thể Thực thể là khái niệm để biểu diễn các đối tượng trong ƯDTH. Thực thể không chỉ bao gồm những sự vật tồn tại một cách khách quan trong thực tế, mà thật ra thực thể còn được dùng cho cả những trường hợp trừu tượng ( Thời khoá biểu, công nợ, tồn kho…). Mỗi thực thể sẽ có những thuộc tính đặc trưng cho thực thể đó. Thuộc tính của một thực thể bao gồm có tên (name), kiểu dữ liệu (type) và bản số (cardinality). 3.2.3.2. Phương pháp xác định loại thực thể Việc xác định các loại thực thể có thể được tiếp cận theo hai cách sau: Tiếp cận theo kết xuất: dựa vào dữ liệu liên quan đến các báo cáo, hoá đơn, phiếu…Từ đó có thể xác định được các thuộc tính Tiếp cận theo quy trình quản lý: dựa vào những mô tả về quy trình quản lý trong Hồ sơ khảo sát để xác định các thực thể. 3.2.3.3. Danh sách các loại thực thể trong ứng dụng Dựa vào các kết xuất và sơ đồ nghiệp vụ trong phân khảo sát chúng ta có thể đưa ra được các thực thể cơ bản sau: Thực thể Sản phẩm (SANPHAM) SANPHAM MASP Mabac Maloai kieudang Kichthuoc baohanh Tensp Giasp Gioithieu Hinh LUOTXEM Ngayramat tonkho spnoibat trongluong phanloai Hình 3.5: thực thể sản phẩm Thực thể tin tức giải trí (tintuc) Tintuc matt ndm Tentt Noidung Ngaydt Tacgia chuthichnhanh Nguoigui Hinh luotxem Hình 3.6: thực thể tin tức giải trí Thực thể danh mục nhóm (loaisp) loaisp Maloai Tenloaisp manhom sott logo Hình 3.7: thực thể danh mục nhóm Thực thể thông báo dịch vụ (thongbao) thongbao mathongbao thongbao Hình 3.8: thực thể thông báo dịch vụ Thực thể Người sử dụng và quản trị (Members) Members Ten_dang_nhap Mathanhvien gioitinh dienthoai Dia_chi email Ho_ten ngaythamgia Mat_khau Hình 3.9: thực thể người sử dụng và quản trị Thực thể Hoá đơn đặt hàng (DONDH) DONDH ID Hoten Email Diachi dienthoai NGAYDATHANG Hình 3.10: thực thể hoá đơn đặt hàng Thực thể Hoá quảng cáo (quangcao) quangcao Malogo Hinh link Thực thể Hoá quảng cáo 3.2.4. Mối quan hệ giữa các thực thể DONDH Sanpham Loaisp Users Đặt hàng Thuộc Hình 3.11: Sơ đồ mối quan hệ giứa các loại thực thể Ta nhân thấy giữa các loại thực thể Hoa_don và Products xuất hiện mối quan hệ nhiều - nhiều, do vậy ta có thể tách thành các loại thực thể sau: (Hình 3.10) DONDH Dat_hang sanpham Đặt hàng Bao gồm Hình 3.12: Phân tích quan hệ nhiều-nhiều 3.2.5. Mô tả dữ liệu 3.2.5.1. Các loại thực thể Loại thực thể Diễn giải DONDH Hoá đơn đặt hàng CHITIETDONHANG Nội dung phiếu đặt hàng sanpham Sản phẩm LOAISP Danh mục nhóm TINTUC Tin tức, giải trí Các thực thể phụ và thực thể hệ thống quangcao Danh mục các quảng cáo của trang Thongke Đếm số lần truy cập trang TINTUC Tin vắn quảng cáo, giải trí Thongbao Các thông báo của trang Members Người quản trị hệ thống và khách 3.2.5.2. Mô tả các loại thực thể Thực thể DONDH Thuộc tính Diễn giải Kiểu Kích thước P P: Primary key (khóa chính) M: Mandatory (không được rỗng) M SODDH Số hoá đơn AutoNumber 8 x x MATHANHVIEN Number x Hoten Họ tên người đặt hàng Text 50 x Gioitinh Giới tính Text 10 x Diachi Địa chỉ Text 50 x PHONE Điện thoại Text 12 x Email Email Text 50 x FAX Text 20 THANHTOAN Thanh toán Text 50 x DIACHINHAN Địa chỉ nhận hàng Text 50 x TGIANNHAN Thời gian nhận Text x GHICHU Memo NGAYDATHANG Ngày đặt Date/time x TRANGTHAI Xác nhận đơn hàng Yes/No x Thực thể CHITIETDONHANG Thuộc tính Diễn giải Kiểu Kích thước P M ID Mã phiếu đặt AutoNumber 8 x x SODDH Mã hàng đã đặt Number 8 x MASP Mã các sản phẩm Number 8 x SLDAT Số lượng đặt Number 4 x Thực thể sanpham (Sản phẩm) Thuộc tính Diễn giải Kiểu Kích thước P M MASP Mã sản phẩm Number 8 x x TENSP Tên sản phẩm Text 250 x GIOITHIEU Giới thiệu Memo x TINHNANGKHAC Chi tiết về sản phẩm Memo x GIASP Giá cũ trước khuyến mãi Number x MALOAI Giá bán của sản phẩm Number x Baohanh Thời gian bảo hành Text 20 x KHUYENMAI Khuyến mại sản phẩm Text 10 Phukien Phụ kiện kèm theo Text 255 x Ghichu Ghi chú Memo Kichthuoc Kích thước Text 50 x Trongluong Trọng lượng Text 50 SPNOIBAT Sản phẩm nổi bật Yes/No x TONKHO Trạng thái Number 2 x NGAYRAMAT Ngày ra mắt Date/Time x SOLUONGNHAP Ngôn ngữ Number 8 x LUOTXEM Số lần xem sản phẩm Number 8 x Thực thể Tin tức (tintuc) Thuộc tính Diễn giải Kiểu Kích thước P M MATT Mã tin tức Number 8 x x MALT Mã loại tin Text 250 x TENTT Tên bài tin tức Memo x NOIDUNG Nội dung tin bài Memo x NDM Tin chú ý Yes/No x HINH Hình ảnh tin đăng Text 20 x NGAYDT Ngày gửi Date/Time x NGUOIGUI Người gửi Text 50 x TACGIA Tác giả Text 50 LUOTXEM Lượt xem tin bài Number 4 Thực thể quảng cáo Thuộc tính Diễn giải Kiểu Kích thước P M MALOGO Mã logo Number 8 x x HINH Hình logo Text 255 x LINK Link quảng cáo Text 255 x Thực thể LOAISP Thuộc tính Diễn giải Kiểu Kích thước P M MALOAI Mã loại Number 8 x x TENLOAISP Tên loại sản phẩm Text 100 x MANHOM Mã nhóm Number 4 x LOGO Logo của loại sản phẩm Text 100 x STT Số thứ tự Number 2 x Thực thể Members Thuộc tính Diễn giải Kiểu Kích thước P M MATHANHVIEN Mã người quản trị Number 8 x x TEN_DANG_NHAP Tên đăng nhập Text 50 x MAT_KHAU Mật khẩu Text 20 x HO_TEN Tên thật Text 50 x DIEN_THOAI Điện thoại Text 20 x GIOITINH Giới tính Text 10 x Email Email đăng ký Text 50 x NGAYTHAMGIA Date/Time x DIA_CHI Địa chỉ Text 50 NDM Thuộc nhóm quyền hạn Text 10 x Thực thể nhóm sản phẩm (NHOMSP) Thuộc tính Diễn giải Kiểu Kích thước P M MANHOM Mã nhóm Number 2 x x TENNHOM Tên Nhóm Text 255 x STT Số thứ tự Number 2 x Thực thể quangcao Thuộc tính Diễn giải Kiểu Kích thước P M MALOGO Mã Logo Number 8 x x HINH Text 50 x LINK Đường dẫn đến ảnh Text 255 x Thực thể thông báo (thongbao) Thuộc tính Diễn giải Kiểu Kích thước P M MATHONGBAO Mã thông báo Number 4 x x THONGBAO Nội dung thông báo Memo x Thực thể loại tin tức (loaitintuc) Thuộc tính Diễn giải Kiểu Kích thước P M MALT Mã loại tin tức Number 8 x x TENLT Tên loại tin tức Text 50 x Thực thể liện hệ (LIENHE) Thuộc tính Diễn giải Kiểu Kích thước P M MAEMAIL Mã e mail AutoNumber 8 x x HOTEN Họ tên khách Text 50 x DIACHI Địa chỉ Text 50 x EMAIL Text 50 x DIENTHOAI Điện thoại Text 50 NOIDUNG Ý kiến của khách Memo x 3.2.6. Mô hình thực thể liên kết Từ những phân tích trên ta xây dựng được mô hình thực thể liên kết dữ liệu của bài toán “Xây dựng website bán điện thoại di động – MINH PHÚ mobile” Hình 3.6: Mô hình thực thể liên kết CHƯƠNG IV: PHÂN TÍCH VÀ THIẾT KẾ CÁC THUẬT TOÁN 4.1. Phân tích thành các phần xử lý 4.1.1. Cơ sở phân tích và xác định các thành phần xử lý 4.1.1.1. Xác định danh sách các xử lý Để xác định danh sách các xử lý của ứng dụng tin học, chúng ta có thể dựa trên hai cách tiếp cận theo kết xuất và theo quy trình nghiệp vụ. Tiếp cận theo kết xuất Trong cách tiếp cận này chúng ta xem xét từng kết xuất và tìm hiểu những xử lý nào cần được thực hiện để tạo ra những kết xuất của ứng dụng tin học. Tiếp cận theo kết xuất có ưu điểm là trực quan, dễ thực hiện nhưng có khuyết điểm là kém linh hoạt, khó mở rộng. Tiếp cận theo quy trình nghiệp vụ Khi tiếp cận theo quy trình nghiệp vụ, chúng ta vận dụng phương pháp phân tích top – down. Xuất phát từ một công tác nghiệp vụ trong thực tế, chứng ta phân rã thành những xử lý con theo nhiều cấp bậc để tạo thành một cây xử lý. 4.1.1.2. Mô tả các xử lý trong chương trình Mỗi xử lý trong danh sach cần phải được mô tả một cách rõ ràng. Nội dung mô tả một xử lý bao gồm: tên, chức năng, dữ liệu đầu vào, dữ liệu đầu ra. 4.1.2. Danh sách các xử lý của ứng dụng Dựa và các sơ đồ phần rã chức năng, sô đồ nghiệp vụ, các kết xuất trong quá trình khảo sát, ta có thể đưa ra các chức năng xử lý của hệ thống như sau Tên xử lý Diễn giải XL1 Đăng nhập hệ thống XL2 Tạo Acount hệ thống XL3 Cập nhật danh mục hàng hoá XL4 Cập nhật danh mục tin tức, giải trí XL5 Cập nhật danh mục download XL6 Cập nhật danh mục menu (danh mục nhóm) XL7 Cập nhật liên kết quảng cáo XL8 Cập nhật banner trang chủ XL9 Cập nhật tin nhanh quảng cáo XL10 Xử lý đặt hàng XL11 Thống kê danh sách đặt hàng XL12 Thuật toán tìm kiếm 4.2. Các thuật toán chính của đề tài 4.2.1. Thuật toán đăng nhập vào hệ thống (login) Dữ liệu đầu vào Sơ đồ xử lý TEN_DANG_NHAP, MAT_KHAU Kiểm tra hợp lệ Đăng nhập Thông báo lỗi Lưu phiên làm việc Members table Sai Đúng Sử dụng hệ thống Yêu cầu xử lý chức năng Dữ liệu không được để trống. Tên không xuất hiện các ký tự lạ. Mật khẩu phải có ít nhất 4 ký tự và không có ký tự đặc biệt, tên không có dấu cách. Nếu sai xuất thông báo lỗi yêu cầu đăng nhập lại. Nếu đăng nhập thành công thì lưu lại thông tin đăng nhập cho phiên làm việc hiện tại. 4.2.2. Tạo Acount trong hệ thống Dữ liệu đầu vào Sơ đồ xử lý TEN_DANG_NHAP, MAT_KHAU, HO_TEN, MATHANHVIEN, NGAYTHAMGIA, EMAIL Kiểm tra quyền Đăng nhập Thông báo lỗi Nhập thông tin account Members table Sai Đúng Kiểm tra hợp lệ Thông báo lỗi Sai Đúng Yêu cầu xử lý chức năng: Người sử dụng phải có quyền quản trị Dữ liệu không được để trống. Tên đăng nhập không xuất hiện các ký tự lạ, không có dấu cách. Mật khẩu phải có ít nhất 4 ký tự và không có ký tự đặc biệt. Nếu sai xuất thông báo lỗi yêu cầu đăng nhập lại. Nếu thành công thì lưu lại thông tin vào bảng tài khoản Khi sửa lại thông tin không được phép sửa tên tài khoản 4.2.3. Cập nhật danh mục hàng hoá Dữ liệu đầu vào Sơ đồ xử lý TEN_DANG_NHAP, MAT_KHAU, Thông tin sản phẩm Kiểm tra quyền Đăng nhập Thông báo lỗi Nhập thông tin hàng hoá Member table Sai Đúng Kiểm tra hợp lệ Thông báo lỗi Sai Đúng sanpham table Yêu cầu xử lý chức năng: Người sử dụng phải có quyền quản trị Dữ liệu không được để trống. Tên đăng nhập không xuất hiện các ký tự lạ, không có dấu cách. Nếu sai xuất thông báo lỗi yêu cầu đăng nhập lại. Nếu thành công thì nhập thông tin sản phẩm Kiểm tra tính hợp lệ nếu được thì lưu vào bảng sanpham 4.2.4. Cập nhật danh mục tin tức sản phẩm Dữ liệu đầu vào Sơ đồ xử lý TEN_DANG_NHAP, MAT_KHAU, Nội dung tin tức hoặc tin giải trí hoặc giới thiệu công ty … Kiểm tra quyền Đăng nhập Thông báo lỗi Nhập nội dung thông tin Member table Sai Đúng Kiểm tra hợp lệ Thông báo lỗi Sai Đúng tintuc table Yêu cầu xử lý chức năng: Người sử dụng phải có quyền quản trị Dữ liệu không được để trống. Tên đăng nhập không xuất hiện các ký tự lạ, không có dấu cách. Nếu đăng nhập sai xuất thông báo lỗi yêu cầu đăng nhập lại. Nếu thành công thì nhập nôi dung thông tin cần đăng 4.2.5. Thuật toán tìm kiếm dữ liệu trong hệ thống Dữ liệu đầu vào Sơ đồ xử lý Nội dung tin cần tìm, loại tin cần tìm Khách hàng Nhập nội dung tin cần tìm và loại tin cần tìm Tìm kiếm Hiển thị kết quả sanpham table Loại SP Sai Tìm Thấy Không thấy Báo không thấy Yêu cầu xử lý chức năng: Để mặc định mục cần tìm là tìm sản phẩm Nếu không tìm thấy thì hiện thông báo không tìm thấy Nếu tìm thành công thì hiển thị danh sách mục tìm thấy 4.2.6. Thuật toán đặt hàng Dữ liệu đầu vào Sơ đồ xử lý Thông tin khách đặt hàng, Mã hàng, số lượng Khách hàng Chọn hàng Đúng sanpham table chọn tiếp Sai Hiển thị giỏ hàng Nhập thông tin người đặt DONDH ,Hoa_don table Yêu cầu xử lý chức năng: Dữ liệu không được để trống. Khách có thể chọn hàng ngay hoặc xem thông tin cụ thể của hàng trước khi chọn hàng Khi khách hàng chon hàng hiện chi tiết thông tin giỏ hàng Khách có thể quay lại chọn hàng tiếp những mặt hàng khác Khi khách đặt mua phải yêu cầu nhập thông tin của khách Sau khi đặt hàng xong phải hiện thông báo cho khách biết CHƯƠNG V: THIẾT KẾ CHƯƠNG TRÌNH 5.1. Thiết kế các giao diện chính cho chương trình 5.1.1. Một số yêu cầu khi thiết kế giao diện ứng dụng 5.1.1.1. Các tính chất của hình giao diện Tính đồng nhất Tính thân thuộc, bắt mắt Tính phong phú đa dạng của nội dung trình bày Tính phong phú của thao tác xử lý Tính cá nhân hóa 5.1.1.2. Các kỹ thuật Cập nhật nội dung Bổ sung thao tác Tăng tốc độ nhập liệu Xử lý các lỗi trong quá trình hoạt động Thân thuộc hóa giao diện Cá nhân hóa giao diện 5.1.2. Thiết kế các màn hình giao diện 5.1.2.1. Thiết kế trang chủ Một khía cạnh khác giúp để lại kinh nghiệm mua hàng thú vị cho khách hàng trực tuyến chính là giao diện: được hiểu là từ ngữ và hình ảnh mà người mua hàng sẽ tiếp xúc, thay vì người bán hàng thực sự. Trang chủ là trang thể hiện bộ mặt chính của ứng dụng, do vậy các chức năng phải được bố trí hợp lý, tiện lợi cho người dùng khi lựa chọn các chức năng đó Từ trang chủ người xem có thể liên kết đến các trang nội dung phải nhanh chóng dễ dàng và tiện lợi. Hình 5.1: Màn hình trang chủ 5.1.2.2 Màn hình đăng nhập Căn cứ theo các yêu cầu trong phần xử lý ta có thể xây dựng mục login vào tài khỏan của khách hàng và admin cùng nhau, và hệ thống sẽ tự check xem tài khỏan đó login với quyền hạn là khách hàng member hay là admin quản lý trang giao diện đăng nhập như sau: Hình 5.2: Màn hình đăng nhập 5.1.2.3. Màn hình sản phẩm điện thoai Hình 5.3: Màn hình sản phẩm điện thoại 5.1.2.4. Màn hình khi tài khoản login với quyền admin Hình 5.4: Màn hình khi tài khoản login với quyền admin 5.1.2.5. Màn hình cập nhật sản phẩm mới Hình 5.5: Màn hình cập nhật sản phẩm mới 5.1.2.6. Màn hình quản lý đơn đặt hàng Hình 5.6: Màn hình quản lý đơn đặt hàng 5.1.2.7. Màn hình tin bài đã đăng Hình 5.7: Màn hình tin bài đã đăng 5.1.2.8. Màn hình cập nhật, đăng tin tức Hình 5.8 : Màn hình cập nhật, đăng tin tức 5.1.2.9. Màn hình xem danh sách khách hàng là thành viên đăng ký: Hình 5.9: Màn hình danh sách khách hàng là thành viên 5.2. Một số đoạn mã chính của chương trình: 5.2.1. Kết nối cơ sở dữ liệu: <% filenameDB="..\Images\minhphumobile\minhphu.mdb" %> sub ketnoi(filename,cn) set cn=server.CreateObject("adodb.connection") cn.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source = " & server.MapPath(filename) cn.CursorLocation=3 'adUseClient cn.Open end sub 5.2.2. Mở cơ sở dữ liệu và hiển thị dữ liệu <% ‘ Mở cơ sở dữ liệu call ketnoi(filenameDB,cn) 'open ket noi sql="SELECT * FROM LOAISP" call MoRec(sql,cn,rs_LDT) while not rs_LDT.EOF sql="select top 1 * from SANPHAM where MALOAI=" & rs_LDT("MALOAI") & " order by NGAYRAMAT desc" sql_UC="select top 1 * from SANPHAM where MALOAI=" & rs_LDT("MALOAI") & " order by TONKHO asc" call MoRec(sql,cn,rs_DT) call MoRec(sql_UC,cn,rs_DTUC) if not rs_DT.BOF then %> ‘ Phân trang và phân loại hiển thị nội dung "" THEN Response.Write ("" & rs_LDT("LOGO") & "") ELSE Response.Write ("../images/Noimages.gif") %>" align="center" vspace="2" hspace="8">Hàng mới nhập Hàng bán chạy . Giá bán : . Ngày ra mắt : ';return true" onmouseout="window.status='Chao mung ban den voi MINH PHÚ Mobile !';return true" href="dienthoaichitiet.asp?IDdienthoaichitiet="> "" THEN Response.Write ("" & rs_DT("HINH") & "") ELSE Response.Write ("../images/Noimages.gif") %>" align="left" vspace="2" hspace="6" class="Images"> Giá: "0" THEN Response.Write ("" & rs_DT("GIASP") & " VND") ELSE Response.Write ("Chưa báo giá") %> B.Hành: "" THEN Response.Write ("" & rs_DT("BAOHANH") & "") ELSE Response.Write ("Không") %> Hiện tại: . Giá bán : . Ngày ra mắt : ';return true" onmouseout="window.status='Chao mung ban den voi MINH PHÚ Mobile !';return true" href="dienthoaichitiet.asp?IDdienthoaichitiet="> . Giá bán : . Ngày ra mắt : ';return true" onmouseout="window.status='Chao mung ban den voi MINH PHÚ Mobile !';return true" href="dienthoaichitiet.asp?IDdienthoaichitiet="> "" THEN Response.Write ("" & rs_DTUC("HINH") & "") ELSE Response.Write ("../images/Noimages.gif") %>" align="left" vspace="2" hspace="6" class="Images"> Giá: "0" THEN Response.Write ("" & rs_DTUC("GIASP") & " VND") ELSE Response.Write ("Chưa báo giá") %> B.Hành: "" THEN Response.Write ("" & rs_DTUC("BAOHANH") & "") ELSE Response.Write ("Không") %> Hiện tại: . Giá bán : . Ngày ra mắt : ';return true" onmouseout="window.status='Chao mung ban den voi MINH PHÚ Mobile !';return true" href="dienthoaichitiet.asp?IDdienthoaichitiet="> <% end if end if end if rs_LDT.movenext wend rs_LDT.close set rs_LDT=nothing rs_DT.close set rs_DT=nothing rs_DTUC.close set rs_DTUC=nothing %> ‘ quản lý chỉnh sửa sản phẩm <% call ketnoi(filenameDB,cn) MASP=Request.QueryString("NDM") NGUOIGUI=Session("HO_TEN") MALOAI=Request.Form("cmbChungloai") MABAC=Request.Form("cmbMABAC") TENSP=Trim(Request.Form("txtTENSP")) GIOITHIEU=Request.Form("txtGIOITHIEU") HINH=Trim(Request.Form("txtHINH")) NGAYRAMAT=Trim(Request.Form("txtNGAYRAMAT")) GIASP=Trim(Request.Form("txtGIASP")) KICHTHUOC=Trim(Request.Form("txtKICHTHUOC")) TRONGLUONG=Trim(Request.Form("txtTRONGLUONG")) KIEUDANG=Trim(Request.Form("txtKIEUDANG")) BAOHANH=Trim(Request.Form("txtBAOHANH")) DONGGOI=Trim(Request.Form("txtDONGGOI")) MANG=Trim(Request.Form("txtMANG")) MANHINHTRONG=Trim(Request.Form("txtMANHINHTRONG")) MANHINHNGOAI=Trim(Request.Form("txtMANHINHNGOAI")) GOINHANNHO=Trim(Request.Form("txtGOINHANNHO")) TGIANGOI=Trim(Request.Form("txtTGIANGOI")) TGIANCHO=Trim(Request.Form("txtTGIANCHO")) TINNHAN=Trim(Request.Form("txtTINNHAN")) DONGBOPC=Trim(Request.Form("txtDONGBOPC")) BONHONGOAI=Trim(Request.Form("txtBONHONGOAI")) BONHOTRONG=Trim(Request.Form("txtBONHOTRONG")) PIN=Trim(Request.Form("txtPIN")) KIEUCHUONG=Trim(Request.Form("txtKIEUCHUONG")) GAME=Trim(Request.Form("txtGAME")) TINHNANGKHAC=Request.Form("txtTINHNANGKHAC") SOLUONGNHAP=Trim(Request.Form("txtSOLUONGNHAP")) KHUYENMAI=Trim(Request.Form("txtKHUYENMAI")) GPRS=Request.Form("txtGPRS") if GPRS="" THEN GPRS=FALSE WAP=Request.Form("txtWAP") if WAP="" THEN WAP=FALSE HONGNGOAI=Request.Form("txtHONGNGOAI") if HONGNGOAI="" THEN HONGNGOAI=FALSE FM=Request.Form("txtFM") if FM="" THEN FM=FALSE QUAYSOGIONGNOI=Request.Form("txtQUAYSOGIONGNOI") if QUAYSOGIONGNOI="" THEN QUAYSOGIONGNOI=FALSE GHIAM=Request.Form("txtGHIAM") if GHIAM="" THEN GHIAM=FALSE CAMERA=Request.Form("txtCAMERA") if CAMERA="" THEN CAMERA=FALSE NGHENHAC=Request.Form("txtNGHENHAC") if NGHENHAC="" THEN NGHENHAC=FALSE JAVA=Request.Form("txtJAVA") if JAVA="" THEN JAVA=FALSE PHANLOAI=Request.Form("txtPHANLOAI") if PHANLOAI="" THEN PHANLOAI=FALSE SPNOIBAT=Request.Form("txtSPNOIBAT") if SPNOIBAT="" THEN SPNOIBAT=FALSE sql="update SANPHAM set MABAC = " & MABAC & "," sql=sql & " MALOAI ='" & MALOAI & "'," sql=sql & " TENSP ='" & TENSP & "'," sql=sql & " GIOITHIEU ='" & GIOITHIEU & "'," sql=sql & " HINH ='" & HINH & "'," sql=sql & " NGAYRAMAT ='" & NGAYRAMAT & "'," sql=sql & " GIASP ='" & GIASP & "'," sql=sql & " KICHTHUOC ='" & KICHTHUOC & "'," sql=sql & " TRONGLUONG ='" & TRONGLUONG & "'," sql=sql & " KIEUDANG ='" & KIEUDANG & "'," sql=sql & " BAOHANH ='" & BAOHANH & "'," sql=sql & " DONGGOI ='" & DONGGOI & "'," sql=sql & " MANG ='" & MANG & "'," sql=sql & " MANHINHTRONG ='" & MANHINHTRONG & "'," sql=sql & " MANHINHNGOAI ='" & MANHINHNGOAI & "'," sql=sql & " GOINHANNHO ='" & GOINHANNHO & "'," sql=sql & " TGIANGOI ='" & TGIANGOI & "'," sql=sql & " TGIANCHO ='" & TGIANCHO & "'," sql=sql & " TINNHAN ='" & TINNHAN & "'," sql=sql & " DONGBOPC ='" & DONGBOPC & "'," sql=sql & " GPRS =" & GPRS & "," sql=sql & " HONGNGOAI =" & HONGNGOAI & "," sql=sql & " WAP =" & WAP & "," sql=sql & " FM =" & FM & "," sql=sql & " QUAYSOGIONGNOI =" & QUAYSOGIONGNOI & "," sql=sql & " GHIAM =" & GHIAM & "," sql=sql & " CAMERA =" & CAMERA & "," sql=sql & " NGHENHAC =" & NGHENHAC & "," sql=sql & " JAVA =" & JAVA & "," sql=sql & " BONHONGOAI ='" & BONHONGOAI & "'," sql=sql & " BONHOTRONG ='" & BONHOTRONG & "'," sql=sql & " PIN ='" & PIN & "'," sql=sql & " KIEUCHUONG ='" & KIEUCHUONG & "'," sql=sql & " GAME ='" & GAME & "'," sql=sql & " TINHNANGKHAC ='" & TINHNANGKHAC & "'," sql=sql & " SOLUONGNHAP ='" & SOLUONGNHAP & "'," sql=sql & " SPNOIBAT =" & SPNOIBAT & "," sql=sql & " KHUYENMAI ='" & KHUYENMAI & "'," sql=sql & " PHANLOAI =" & PHANLOAI & "," sql=sql & " NGUOIGUI ='" & NGUOIGUI & "'" sql=sql & " where MASP =" & MASP cn.execute(sql) cn.close set cn=nothing Response.Redirect("../MINHPHU/Hi.asp?NDM=15") %> ‘ quản lý chỉnh sửa Tin tức <%if Session("user")= 0 then Response.Redirect("../MINHPHU/Trangchu.asp") End if %> <% call ketnoi(filenameDB,cn) 'open ket noi dim MALT,TENTT,NOIDUNG,NGAYDT,TACGIA,HINH MALT=Request.Form("cmbMALT") TENTT=Request.Form("txtTENTT") NOIDUNG=Request.Form("txtNOIDUNG") NGAYDT=Request.Form("txtNGAYDT") TACGIA=Request.Form("txtTACGIA") HINH=Request.Form("txtHINH") NGUOIGUI=Session("HO_TEN") CHUTHICHANH=Request.Form("txtChuThich") NDM=Request.Form("CmbQuyen") sql="insert into TINTUC(MALT,TENTT,NGUOIGUI,NOIDUNG,NGAYDT,CHUTHICHANH,NDM,TACGIA,HINH) values(" sql=sql & MALT & "," sql=sql & "'" & TENTT & "'," sql=sql & "'" & NGUOIGUI & "'," sql=sql & "'" & NOIDUNG & "'," sql=sql & "'" & NGAYDT & "'," sql=sql & "'" & CHUTHICHANH & "'," sql=sql & "'" & NDM & "'," sql=sql & "'" & TACGIA & "'," sql=sql & "'" & HINH & "')" ' Response.Write(sql) cn.execute(sql) cn.close set cn=nothing if Session("user")= 8 then Response.Redirect("../Administrator/TinTucXem.asp?ID=" & MALT) End if if Session("user")= 3 then Response.Redirect("../MINHPHU/Hi.asp?NDM=12") else Response.Redirect("../MINHPHU/Trangchu.asp") End if %> ‘ quản lý kiểm tra thành viên khi đăng nhập <% call ketnoi(filenameDB,cn) dim tendangnhap,matkhau tendangnhap=Replace(Request.Form("txttendangnhap"),"'","''") matkhau=sha256(sha256(Replace(Request.Form("txtmatkhau"),"'","''"))) sql="select * from MEMBERS where Ten_dang_nhap ='" & tendangnhap & "' and Mat_khau='" & matkhau & "'" call MoRec(sql,cn,rs) if not rs.BOF then Session("HO_TEN")=rs("HO_TEN") Session("MATHANHVIEN")=rs("MATHANHVIEN") Session("User")=rs("NDM") session.Timeout = 200 call ketthuc(rs,cn) Response.Redirect("../MINHPHU/trangchu.asp") else Session("User")=0 Response.Redirect("../MINHPHU/Hi.asp?NDM=1") end if %>

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

  • doc26935.doc
Tài liệu liên quan