Mở đầuHiện nay, các công nghệ tiên tiến phát triển ngày càng mạnh mẽ và được ứng dụng ngày càng nhiều vào các lĩnh vực kinh tế, sản xuất cũng như đời sống thường nhật của con người. Một điểm tiêu biểu trong việc phát triển các công nghệ đó phải kể đến việc ứng dụng công nghệ thông tin vào hầu khắp các hoạt động. Nhờ đó, các công việc được thực hiện nhanh, chính xác và đạt kết quả cao hơn rất nhiều. Khi xã hội ngày càng phát triển, mức sống của người dân được nâng cao thu nhập kinh tế ngày càng được cải thiện thì chiếc điện thoại di động không còn trở nên xa lạ với mọi người nữa mà ngược lại nó là một vật dụng không thể thiếu đối với người dân hiện nay. Hầu hết mỗi người đều trang bị cho mình một chiếc điện thoại phù hợp với nhu cầu và túi tiền của mình. Tuy nhiên, với cuộc sống ngày càng bận rộn như hiện nay thì việc muốn mua một chiếc điện thoại mình ưa thích thì người tiêu dùng phải đến tận cửa hang để chọn lựa vì thế sẽ mất khá nhiều thời gian và công sức. Cùng với các lý do nêu trên, qua tìm hiểu em được biết việc ứng dụng bán điện thoại di động trực tuyến sẽ giúp cho khách hàng giảm bớt được thời gian và công sức phải đến tận cửa hàng để mua. Muốn lựa chọn cho mình một chiếc điện thoại ưng ý phù hợp với túi tiền thì khách hàng chỉ cần ngồi bên chiếc máy tính có nối mạng internet là có thế mua được mặt hàng điện thoại mình cần. Do đó em chọn thực hiện đề tài “ Xây dựng Website bán điện thoại di động” .Sự ra đời của ngôn ngữ lập trình cho phép chúng ta có thể thiết kế và xây dựng các ứng dụng giao dịch điện tử dưới nhiều hình thức khác nhau. Với sự hỗ trợ của các loại cơ sở dữ liệu quan hệ, ta có thể kết hợp chúng trên trình chủ như PHP, ASP, JSP,… để có thể xây dựng và triển khai ứng dụng với nhiều mục đích khác nhau. ASP.Net và SQL Server không nhằm ngoài mục đích dùng để xây dựng ứng dụng giao dịch điện tử. Với lí do đó, được sự hướng dẫn tận tình của thầy giáo An Văn Minh, em đã chọn đề tài “Xây dựng Website bán điện thoại ” sử dụng công nghệ ASP.net và hệ quản trị cơ sở dữ liệu SQL Server làm đề tài thực tập tốt nghiệp của mình.
Trang 1Trường Đại Học Công Nghiệp Hà Nội Khoa Công Nghệ Thông Tin - -
Báo Cáo đồ án thực tập tốt nghiệp
Đề tài : Đồ án xây dựng website bán điện thoại
Sinh viên thực hiện: : Lê Tiến Dũng
Lớp: Tin1_K15
Hà Nội, Ngày 14, Tháng 02, Năm 2016
Trang 2Mục lục
Mở đầu 4
LỜI CẢM ƠN 5
Chương 1 Cơ sở lý thuyết 6
1.1.Ngôn ngữ C# 6
1.2.ASP.Net 6
1.3 Internet là gì ? 10
1.4 World Wide Web 11
1.5.HTML 13
1.5.1 Giới thiệu HTML 13
1.5.2 Đặc điểm của HTML 14
1.5.3 Cấu trúc của một tài liệu HTML 14
1.5.4 Quy trình tạo một tài liệu HTML 15
1.6.SQL SERVER 16
1.6.1.Lệnh SQL: 18
1.6.2.Mệnh đề SQL: 18
1.6.3.Những toán hạng SQL: 19
1.6.4.Hàm tổng hợp 19
Chương 2: Khảo sát & Phân tích thiết kế hệ thống 21
2.1.Khảo sát 21
2.1.1 Mục tiêu 21
2.1.2 Yêu cầu 21
2.2.Phân tích thiết kế hệ thống 22
2.2.1.Yêu cầu đề tài 22
2.2.2.Hoạt động của cửa hàng trên mạng 22
2.2.3.Thiết kế hệ thống 25
Chương 3: Thiết kế và cài đặt chương trình 34
3.1.Giao diện chương trình 34
Hình 3.1 Trang giới thiệu về công ty 34
Trang 3Hình 3.2 Trang giới thiệu(tiếp) 34
Hình 3.3 Trang sản phẩm 35
Hình 3.4 Trang chi tiết về sản phẩm 35
Hình 3.5.Trang đặt hàng 36
Hình 3.6.Trang tin tức 36
Hình 3.7.Trang chi tiết tin tức 37
Hình 3.8.Trang liên hệ 37
Hình 3.9 Trang tuyển dụng 38
Hình 3.10 Trang đăng nhập dành cho quản trị viên 38
Hình 3.11.Trang quản trị 39
Hình 3.12.Trang quản trị (tiếp) 39
Hình 3.13.Trang Thông tin đặt hàng 40
Hình 3.14.Trang loại sản phẩm 40
3.2.Các bảng SQL 41
Hình 3.16.Bảng Dat (Tiếp) 41
Hình 3.17.Bảng News 41
Hình 3.18 Bảng News (tiếp) 42
Hình 3.19.Bảng Product 42
Hình 3.20.Bảng Product(tiếp) 43
Hình 3.21.Bảng TSKT 43
Hình 3.22.Bảng TSKT(tiếp) 44
Hình 3.23.Bảng LoaiSP 44
Hình 3.24.Bảng LoaiSP(tiếp) 44
CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 45
4.1 Kết luận 45
4.1.1 Kết quả đạt được 45
4.1.2 Hạn chế 45
4.2 Hướng phát triển đề tài 45
TÀI LIỆU THAM KHẢO 46
Trang 4Mở đầu
Hiện nay, các công nghệ tiên tiến phát triển ngày càng mạnh mẽ và được ứngdụng ngày càng nhiều vào các lĩnh vực kinh tế, sản xuất cũng như đời sống thườngnhật của con người Một điểm tiêu biểu trong việc phát triển các công nghệ đó phải kểđến việc ứng dụng công nghệ thông tin vào hầu khắp các hoạt động Nhờ đó, các côngviệc được thực hiện nhanh, chính xác và đạt kết quả cao hơn rất nhiều Khi xã hộingày càng phát triển, mức sống của người dân được nâng cao thu nhập kinh tế ngàycàng được cải thiện thì chiếc điện thoại di động không còn trở nên xa lạ với mọi ngườinữa mà ngược lại nó là một vật dụng không thể thiếu đối với người dân hiện nay
Hầu hết mỗi người đều trang bị cho mình một chiếc điện thoại phù hợp với nhucầu và túi tiền của mình Tuy nhiên, với cuộc sống ngày càng bận rộn như hiện nay thìviệc muốn mua một chiếc điện thoại mình ưa thích thì người tiêu dùng phải đến tậncửa hang để chọn lựa vì thế sẽ mất khá nhiều thời gian và công sức Cùng với các lý
do nêu trên, qua tìm hiểu em được biết việc ứng dụng bán điện thoại di động trựctuyến sẽ giúp cho khách hàng giảm bớt được thời gian và công sức phải đến tận cửahàng để mua Muốn lựa chọn cho mình một chiếc điện thoại ưng ý phù hợp với túitiền thì khách hàng chỉ cần ngồi bên chiếc máy tính có nối mạng internet là có thế muađược mặt hàng điện thoại mình cần Do đó em chọn thực hiện đề tài “ Xây dựngWebsite bán điện thoại di động”
Sự ra đời của ngôn ngữ lập trình cho phép chúng ta có thể thiết kế và xây dựngcác ứng dụng giao dịch điện tử dưới nhiều hình thức khác nhau Với sự hỗ trợ của cácloại cơ sở dữ liệu quan hệ, ta có thể kết hợp chúng trên trình chủ như PHP, ASP, JSP,
… để có thể xây dựng và triển khai ứng dụng với nhiều mục đích khác nhau ASP.Net
và SQL Server không nhằm ngoài mục đích dùng để xây dựng ứng dụng giao dịch
điện tử Với lí do đó, được sự hướng dẫn tận tình của thầy giáo An Văn Minh, em đã
chọn đề tài “Xây dựng Website bán điện thoại ” sử dụng công nghệ ASP.net và hệ
quản trị cơ sở dữ liệu SQL Server làm đề tài thực tập tốt nghiệp của mình
Trang 5Website được xây dựng với định hướng giúp việc mua sắm điện thoại củakhách hàng dễ dàng và nhanh gọn hơn, không mất thời gian và công sức
Tôi xin cảm ơn các bạn sinh viên K15 trường Đại học Công nghệp, đặc biệt là cácbạn sinh viên lớp Tin 1 K15 đã đoàn kết, giúp đỡ cùng tôi theo học các bộ môn bổ ích
và thú vị trong chương trình học đại học tại trường
Cuối cùng, con xin gửi tới bố, chị gái, mẹ nuôi cùng gia đình lòng biết ơn và tìnhcảm yêu thương
Hà Nội, ngày 08/03/2016
Lê Tiến Dũng
Trang 6Chương 1 Cơ sở lý thuyết
Dựa trên cơ sở các môn đã học như:
Môn cơ sở dữ liệu
Môn hệ quản trị cơ sở dữ liệu
Môn lập trình ứng dụng cơ sở dữ liệu trên web
Môn Thiết kế web
1.1.Ngôn ngữ C#
C#, theo một hướng nào đó, là ngôn ngữ lập trình phản ánh trực tiếp nhất đến.NETFramework mà tất cả các chương trình.NET chạy, và nó phụ thuộc mạnh mẽ vàoFramework này Mọi dữ liệu cơ sở đều là đối tượng, được cấp phát và hủy bỏ bởi trìnhdọn rác Garbage-Collector (GC), và nhiều kiểu trừu tượng khác chẳng hạn như class,delegate, interface, exception, v.v, phản ánh rõ ràng những đặc trưng của.NETruntime
So sánh với C và C++, ngôn ngữ này bị giới hạn và được nâng cao ở một vài đặc điểmnào đó, nhưng không bao gồm các giới hạn sau đây:
Các con trỏ chỉ có thể được sử dụng trong chế độ không an toàn Hầu hết cácđối tượng được tham chiếu an toàn, và các phép tính đều được kiểm tra tràn bộđệm Các con trỏ chỉ được sử dụng để gọi các loại kiểu giá trị; còn những đối
tượng thuộc bộ thu rác (garbage-collector) thì chỉ được gọi bằng cách tham chiếu.
Các đối tượng không thể được giải phóng tường minh
Chỉ có đơn kế thừa, nhưng có thể cài đặt nhiều interface trừu tượng (abstractinterfaces) Chức năng này làm đơn giản hóa sự thực thi của thời gian thực thi
C# thì an-toàn-kiểu (typesafe) hơn C++.
Cú pháp khai báo mảng khác nhau("int[] a = new int[5]" thay vì "int a[5]")
Kiểu thứ tự được thay thế bằng tên miền không gian (namespace).
C# không có tiêu bản
Có thêm Properties, các phương pháp có thể gọi các Properties để truy cập dữliệu
Có reflection
Trang 7Ta phải công nhận một điều là NET Framework và các ứng dụng của nó đã vàđang tạo một cuộc cách mạng kỹ thuật trong công nghệ tin học (InformationTechnólogy), thay đổi tận gốc rễ các kiểu mẫu lập trình hay phát triển và triển khaimạng trên thế giới và do đó tạo một vận hội mới đáp ứng mọi yêu cầu khẩn thiết chocác ngành nghề kỹ thuật và thương mại hiện nay cũng như vạch một hướng đi vữngchắc và lâu dài cho tương lai tin học ASP.NET chính là một trong những ứng dụngquan trọng nhất để phát triển và triển khai mạng một cách dễ dàng chưa từng thấy…
từ xưa đến nay Hãy lắng nghe chinh Microsoft nói về ASP.NET như thế nào:
“ASP.NET is a revolutionary programming frramework that enables the rapid
development of powerful web applications and services Part of the Microsoft NETPlatform, it provides the easiest and most scalable way to develop, deploy and rundistributed web applications that can target any browser or any application.”
Chúng ta cùng tìm hiểu những đặc tính của ASP.NET:
- Easy Programming Model:
ASP.NET giúp chúng ta phát triển và triển khai các ứng dụng về mạng trong mộtthời gian kỷ lục vì nó cung cấp cho ta một kiểu mẫu lập trinh dễ dàng và gọn gàngnhất
Ngoài ra, các trang ASP.NET còn làm việc với mọi browsers hiện nay như InternetExplorer (IE), Netscape, Opera, AOL…mà không cần đổi tới đổi lui các nguồn mã vật
vã như trước
- Flexible Language Options:
Không như ASP kiểu cổ điển chỉ giới hạn với VBScripts and JScripts, ASP.NET yểmtrợ trên 25 ngon ngữ lập trinh (dĩ nhiên ngoài các ngôn ngữ mới thiết lập đã cài sẵnyểm trợ NET framework như là VB.NET, C# và JScript.NET con co MC++.NET,Smalltalk.NET, COBOL.NET, Eiffel.NET, Perl.NET, Component Pascal.NET,
Mercury.NET, Oberon.NET, Python.NET…)
- Great Tool Support:
Mặc dù ta có thể chỉ dung đến Nótepad để triển khai các trang ASP.NET nhưngVisual Studio.NET giúp năng suất triển khai mạng thêm phần hiệu quả vì ta có thểquan sát các kế hoạch của ta dễ dàng hơn khi phác họa các thành phần của ASP.NETbằng hinh ảnh với ASP.NET Web Forms hay Services theo phương pháp “drag-drop-doubleclick” quen thuộc của nền Windows Hơn nữa, còn yểm trợ ta trong việc pháthiện và loại bỏ các lỗi sai một cách rất thuận lợi trong khi phát triển các ứng dụng vềmạng (support for debugging and deploying ASP.NET Web applications)
- Rich Class Framework:
Nhờ nền tảng vững vàng và tài nguyên phong phú NET Framework với hơn 5000classes bao gồm đủ thứ như XML, data access, file upload, regular expressions,
transactions, message queuing, SMTP mail, … nên việc thiết kế các đặc tinh trongmột ứng dụng trở nên nhẹ nhàng và thoải mái hơn xưa rất nhiều
- Compile execution:
ASP.NET không những chạy nhanh hơn ASP cổ điển gấp 5 lần mà còn có thể duytri kiểu mẫu cập nhật gọi là kiểu mẫu “just hit save”, nghĩa là ASP.NET tự động dòtim mọi sự thay đổi và compile files khi cần thiết cũng như lưu trữ kết quả compile đó
Trang 8để cung ứng dịch vụ cho những yêu cầu tiếp theo sau, nhờ vậy ứng dụng của bạn luônluôn được cập nhật hóa và chạy với tốc độ nhanh.
- Rich output cáching:
ASP.NET có khả năng lưu trữ một kết quả chung trong bộ phận memory của trang
để gửi giải đáp cho cùng một yêu cầu từ nhiều khách hàng khác nhau và nhờ đó khôngnhững tiết kiệm được sự lặp đi lặp lại công tac thi hành của một trang web mà còn giatăng hiệu suất một cách ngoạn mục do giới hạn tối đa việc chất vấn các cơ sở dữ liệu (eliminating the need to query the datab ase on every request ) rất tốn nhiều thời gian
- NET Outperforms J2EE:
Trong việc đối đầu nhau về hiệu suất (performance) và scalability với cùng một ứngdụng phát triển giữa Sun's Javà Pet Store J2EE và ASP.NET thi ASP.NET khôngnhững nhanh vượt trội hơn J2EE đến 28 lần (khoảng 2700%), nguồn mà lại ít hơnnhiều (khoảng nguồn mã của J2EE) mà còn dung bộ xử lý (processor) chỉ khoảng1/6 lần so với việc sử dụng processor của J2EE
- Memory Leak, DeadLock và Crash protection:
ASP.NET cũng có khả năng dò tìm và phục hồi (detects and recovers) những trởngại nghiêm trọng như deadlocks hay bộ nhớ bị rỉ để đảm bảo ứng dụng của bạn luônluôn sẵn sàng khi dùng mà không làm cản trở việc cung ứng dịch vụ cần thiết thườnglệ
- Simple application deployment:
ASP.NET đơn giản hóa việc triển khai ứng dụng mạng, do đo biến việc triển khaitoàn bộ ứng dụng trở nên dễ dang và thuận tiện hơn hẳn trước kia vi bay giờ ta chỉ cầnsao (với XCOPY) và lưu trữ ở server chứ không cần phải chạy chương trinh
“regsrv32” để đăng ký bất cứ thành phần nào cả, và thêm nữa khi cần lưu trữ nhữngyếu tố phụ cần thiết cho việc thiết lập hay bố tri các ứng dụng, ta chỉ cần lưu trữ nóvào trong một hồ sơ dưới dạng XML la đủ
- Dynamic update of running application:
ASP.NET cho phép ta tự động cập nhật hóa các thành phần đa compiled (compiledcomponents) mà không cần phải khởi động lại các Web server
- Easy Migration Path:
Ta không cần phải du nhập những ứng dụng được phát triển và triển khai bằngASP cổ điển hiện có vào ASP.NET vi ASP.NET có thể chạy song song với ASP ởcùng một Internet Information Server (IIS) trong nền windows 2000 hay windowx
XP Các ứng dụng cũ vẫn được chạy hết sức thoải mái với ASP.DLL trong khiASP.NET sẽ xử lý các ứng dụng mới Ngoai ra, ASP.NET con cho phép bạn dựng lạinhững thành phần thương mại hiện nay kiểu COM cổ điển trong các ứng dụng của nó
- XML Web Services:
Dịch vụ về mạng với XML cũng cho phép bạn truyền đạt (communicate) và chia
sẻ các dữ kiện xuyên qua mạng Internet dễ dang hơn các SOAP client mà không hềphân biệt đối xử các hệ điều hành hay ngôn ngữ lập trinh khác nhau (regardless of OS
or programming language) Nhờ đó, ta không cần phải học thêm hay đào sâu các kiếnthứcvề Networking, XML hay SOAP,
- Mobile Web Service Support:
Thêm nữa, ASP.NET Mobile Controls còn giúp ta phát triển và triển khai mạngnhắm vào thị trường những cell phone hay PDA với gần hơn 80 Mobile Web Servicesđược cung cấp trong NET framework Bạn chỉ cần lập trinh cho ứng dụng của bạn rồi
Trang 9phó mặc cho Mobile Controls đó tự động phát sinh ra những nguồn mã WAP/WML,HTML hay iMode thich hợp với từng loại thiết bị riêng biệt.
ASP là gì?
Trước hết, họ tên của ASP.NET là Active Server Pages NET (.NET dây là NETframework) Nói đơn giản và ngắn gọn thì ASP.NET là một công nghệ có tính cáchmạng dùng để phát triển các ứng dụng về mạng hiện nay cũng như trong tương lai(ASP.NET is a revolutionary technólogy for developing web applications) Lưu ý ởchỗ ASP.NET là một phương pháp tổ chức hay khung tổ chức (framework) để thiếtlập các ứng dụng hết sức hùng mạnh cho mạng dựa trên CLR (Common LanguageRuntime) chứ không phải là một ngôn ngữ lập trình Ngôn ngữ lập trình được dùng đểdiễn đạt ASP.NET là VB.NET (Visual Basic NET) và VB.NET chỉ là một trong 25ngôn ngữ NET hiện nay được dùng để phát triển các trang ASP.NET mà thôi
Tuy mang họ tên gần giống như ASP cổ điển nhưng ASP.NET không phải là ASP Ta
sơ lược ở đây một vài khác biệt giữa ASP.NET và ASP để ta có một khái niệm tổngquát
Sự khác nhau giữa ASP.NET và ASP
ASP.NET được phác thảo lại từ số không, nó được thay đổi tận gốc rễ và phát triểnphù hợp với yêu cầu hiện nay cũng như vạch một hướng đi vững chắc cho tương laitin học
Lý do chính là vì Microsoft đã quá chán nản trong việc thêm thắt và kết hợp nhữngcông cụ mới vào các kiểu mẫu lập trình hay thiết kế mạng theo kiểu cổ điển nênMicrosoft nghĩ rằng tốt nhất là nên làm một kiểu mẫu hoàn toàn mới thay vì vá víuchỗ này chỗ nọ vào ASP Đó là chưa kể tới nhiều phát minh mới ra đời sau này dựatrên những khái niệm mới mẻ theo xu hướng phát triển hiện nay của công nghệ tin học(Information Technólogy) cần được đưa vào kiểu mẫu phát triển mới đó ASP.NETcung cấp một phương pháp hoàn toàn khác biệt với ASP
Sự thay đổi cơ bản
ASP đã và đang thi hành sứ mạng được giao cho nó để phát triển mạng một cáchtốt đẹp Vậy thì tại sao ta cần phải đổi mới hoàn toàn? Lý do đơn giản là vì ASP đãkhông còn đáp ứng đủ nhu cầu hiện nay trong lĩnh vực phát triển mạng của công nghệtin học
ASP được thiết kế riêng biệt và nằm ở tầng phía trên hệ điều hành Windows vàInternet Information Server do đó các công dụng của nó hết sức rời rạc và giới hạn.Trong khi đó, ASP.NET là một cơ cấu trong các cơ cấu của hệ điều hành Windowsdưới dạng nền hay khung NET Như vậy ASP.NET không những có thể dùng cácobject của các ứng dụng cũ mà còn có thể sử dụng tất cả mọi tài nguyên Windows cómột cách dễ dàng
Ta có thể tóm tắt đại khái sự thay đổi như sau:
Tập tin của ASP.NET (ASP.NET file) có extension là ASPX, còn tập tin của ASP là.ASP
Trang 10Tập tin của ASP.NET (ASP.NET file) được phân tích ngữ pháp bởi XSPISAPI.DLL.Còn tập tin của ASP được phân tích bởi i ASP.DLL.
ASP.NET là kiểu mẫu lập trình phát động bằng sự kiện (event driven), còn các trangASP được thi hành theo tuần tự từ trên xuống dưới
ASP.NET sử dụng trình biên dịch (compiled code) nên rất nhanh, còn ASP dùng trìnhthông dịch (interpreted code) do đó hiệu suất và tốc độ cũng thua kém hẳn
ASP.NET yểm trợ gần 25 ngôn ngữ lập trình mới với NET và chạy trong môi trườngbiên dịch (compiled environment), còn ASP chỉ chấp nhận VBScript và JavàScriptnên ASP chỉ là một scripted language trong môi trường thông dịch (in the interpreterenvironment) Không những vậy, ASP.NET còn kết hợp nhuần nhuyễn với XML(Extensible Markup Language) để vận chuyển các thông tin qua mạng
ASP.NET yểm trợ tất cả các browser và quan trọng hơn nữa là yểm trợ các thiết bịlưu động (mobile devices) Chính các thiết bị lưu động, mà mỗi ngày càng phổ biến,
đã khiến việc dùng ASP trong phát triển mạng nhằm vươn tới thị trường mới đó trởnên vô cùng khó khăn
1.3 Internet là gì ?
Internet là một mạng máy tính toàn cầu mà bất cứ ai cũng có thể kết nối bằng máy
PC của họ Mỗi máy tính trên Internet được gọi là một Host Mỗi Host có khả năngnhư nhau về truyền thông tới máy khác trên Internet Một số Host được nối tới mạngbằng đường nối Dial- up tạm thời, số khác được nối bằng đường nối mạng thật sự.Vào mạng Internet, bạn sẽ có thể học tập, tìm thấy nhiều tài liệu để nghiên cứu,trao đổi thư từ, nói chuyện với bạn bè, xem phim, nghe nhạc và đặc biệt là muốn đặthàng và mua bán, …
Internet server là những server cung cấp các dịch vụ Internet như Web server, Mailserver, FPT server, …
Chương trình máy khách (client): Là chương trình có người dùng thân thiện, chạytrên máy khách, truy cập thông tin hay dịch vụ từ những chương trình khác trênInternet
Chương trình máy phục vụ (server): Là chương trình trên máy chủ, cung cấp thôngtin hay dịch vụ được yêu cầu cho chương trình Client trên Internet Chương trìnhserver tập trung hóa quá trình và thông tin để chương trình Client xử lý
Trang 11Internet Service Provider (ISP): Là nơi cung cấp các dịch vụ trên Internet chokhách hàng Mỗi ISP có nhiều khách hàng và có thể sở hữu nhiều dịch vụ Internetkhác nhau.
Các dịch vụ thường dùng trên Internet
Dịch vụ World Wide Web (WWW, W3): Gọi tắt là Web Đây là dịch vụ phổ biến
hiện nay trên Internet Để sử dụng dịch vụ này, các máy Client cần có chương trìnhduyệt Web gọi tắt là Web browser Thông qua Internet, các browser (trình duyệt) truycập được thông tin của Web server Các trình duyệt đồ họa thông dụng hiện nay làInternet Explorer, Netscape, Opera, …
Dịch vụ Electronic Mail: Viết tắt là Email Đây là dịch vụ cho phép các cá nhân
trao đổi thư từ với nhau qua Internet
Dịch vụ FTP (File Transfer Protocol): Đây là dịch vụ truyền hay nhận tập tin trên
Internet Tên các FTP server thường có dạng: ftp.domainname Giao thức truyền tậptin trên Internet là: ftp://ftp.domainname
Để truyền thông với các máy tính khác, mọi máy tính trên Internet phải hỗ trợ giaothức chung TCP/IP TCP/IP (Transmission Control Protocol/ Internet Protocol)
Để thực hiện trao đổi thông tin trên mạng, mỗi máy tính trên Internet đều đượcđịnh danh để phân biệt với các máy khác, thông qua địa chỉ IP (IP address) Mỗi địachỉ IP gồm bốn số hệ thập phân có giá trị từ 0 đến 255, phân cách bằng dấu chấm
URL (Uniform Resource Locator): Để truy xuất một dịch vụ thông tin của server,
người ta cần phải xác định loại, địa chỉ và cổng của dịch vụ đó
1.4 World Wide Web
World Wide Web là một dịch vụ phổ biến hiện nay trên Internet, cho phép bạntruy xuất thông tin văn bản, âm thanh, video trên toàn thế giới Thông tin trên Internethiện nay được thể hiện chủ yếu qua hàng triệu trang Web
Lợi ích của Web
Trang 12Ngày nay một số Website trên toàn thế giới đã đạt tới con số khổng lồ Thông quaWebsite các công ty có thể giảm tối đa chi phí in ấn và phân phát tài liệu cho kháchhàng, đại lí ở nhiều nơi.
Trang 13Mang lại hiệu quả cao nhờ công nghệ Web, giúp thiết lập nhanh các trang Web vớigiá thành rẻ Tận dụng được tài nguyên sẵn có trên Internet Không cần đầu tư lớn chohuấn luyện và đào tạo.
Thông tin cập nhật mới nhất, giảm thời gian và giá thành đưa sản phẩm tới thịtrường Thông tin liên lạc nhanh chóng, hiệu quả vượt mọi khoảng cách địa lí
Trình duyệt Web
Để sử dụng dịch vụ Web, Client cần có chương trình duyệt Web, kết nối vàoInternet thông qua ISP Nội dung tài liệu được trình bày trong trình duyệt dưới dạngvăn bản hoặc đồ họa, phụ thuộc vào loại trình duyệt được sử dụng Trong ứng dụngWeb, trình duyệt Web được dùng để hiển thị nội dung các trang Ngoài ra nó còn hiểnthị kết quả lấy từ cơ sở dữ liệu
Internet Explorer 7.0 là một trình duyện chuẩn cho phép trình bày nội dung doWeb server cung cấp, cho phép đăng kí tới bất kì Web site nào trên Internet, hỗ trợtrình bay trang Web trong chế độ toàn màn hình, cung cấp trang định hướng di chuyểngiúp duyệt trang Web thuận tiện hơn Cho biết Web site nào bị thay đổi kể từ lầnviếng thăm cuối cùng, bảo vệ theo vùng, giữ lại các Web site ưa thích
Web server
Là ứng dụng cài đặt trên máy hay Internet, cho phép nhiều người dùng có thể truyxuất cùng lúc tới một cơ sở dữ liệu gọi là ứng dụng dạng Client/server Khi đó, hệthống ứng dụng phải có chương trình Client xử lí một số nhiệm vụ và chương trìnhserver xử lí nhiệm vụ khác
Web là một ứng dụng Client/server Trong đó, Web server đóng vài trò mộtchương trình server xử lý các nhiệm vụ xác định, như tìm trang thích hợp, xử lý tổchức dữ liệu, kiểm tra dữ liệu hợp lệ, sắp xếp dữ liệu và trả kết quả về Client, đảmbảo an toàn dữ liệu Web cũng là nơi lưu trữ cơ sở dữ liệu.Việc xây dựng một ứngdụng trên Web có thể rất khác so với các loại lập trình khác không giống những ứngdụng Client/server thông thường
Trong thực tế, mỗi ứng dụng Web đều tồn tại hai loại: Trang Web tĩnh và trangWeb động Trang Web tĩnh là trang Web thông thường không kết nối cơ sở dữ liệu.Ngược lại, trang Web động là trang Web thường là trang kết nối và truy cập cơ sỡ dữ
Trang 14liệu Điều này có nghĩa là khi làm tươi trang Web động, dữ liệu trình bày trên trangWeb được đọc từ cơ sở dữ liệu
Để xây dựng mô hình Client/server thông thường, ứng dụng Client duy trì nối kết vớithành phần server của nó Bên cạnh việc yêu cầu gửi và giữ dữ liệu, Client truy vấnserver theo định ký hầu đảm bảo nối kết vẫn tồn tại Nếu server bị đóng, Client sẽnhận biết điều này và thực hiện các thao tác riêng như gửi thông báo đến người dùng.Khi xây dựng ứng dụng Web, không chỉ quan tâm đến thời gian tồn tại của servertrong bộ nhớ mà còn quan tâm đến kết nối mạng Internet Khi trình duyệt yêu cầu mộttrang Web, nó được server đang mở ghi nhận và gửi đi Server sẽ không kiểm tra vàxác định xem tài liệu trang Web và tất cả các thành phần liên quan đến trang như: hìnhảnh, âm thanh… được chuyển tới trình duyệt hay chưa
Để server và trình duyệt có thể liên lạc và trao đổi thông tin với nhau, ta phải xâydựng các ứng dụng Web bằng những ngôn ngữ lập trình như HTML, PHP, ASP,JAVÀ
1.5.HTML
Ngôn ngữ đánh dấu siêu văn bản (HTML - Hyper Text Markup Language) là mộtngôn ngữ đánh dấu được thiết kế để tạo ra các trang Web, trong đó các thông tin đượctrình bày trên World Wide Web HTML là một ứng dụng đơn giản của SGML, được
sử dụng trong các tổ chức công nghệ truyền thông HTML giờ đây đã trở thành mộtchuẩn Internet do tổ chức World Wide Web Consortium (W3C) duy trì Phiên bảnmới nhất của nó hiện là HTML 4.01 Tuy nhiên, HTML hiện không còn được pháttriển tiếp, người ta đ thay thế nó bằng XHTML
HTML tồn tại như là các tập tin văn bản chứa trên các máy tính nối vào mạng
Internet Các file này chứa thẻ đánh dấu, là các chỉ thị cho chương trình về cách hiểnthị, xử lý văn bản ở dạng thuần túy Các file này thường được truyền đi trên mạnginternet thông qua giao thức mạng HTTP, sau đó thẻ phần HTML sẽ được hiển thịthông qua một trình duyệt web, các tr.nh duyệt đảm nhiệm công việc đọc văn bản củatrang cho người sử dụng, phần mềm đọc email, hay một thiết bị không dây như điệnthoại di động
1.5.1 Giới thiệu HTML
Ngôn ngữ đánh dấu siêu văn bản chỉ ra một trang Web được hiển thịnhư thế nào
trong một trình duyệt Sử dụng các thẻ và các phần tử HTML, bạn cóthể:
Điều khiển hình thức và nội dung của trang
Xuất bản các tài liệu trực tuyến và truy xuất thông tin trực tuyến bằng
Trang 15cách sử dụng các liên kết được chèn vào tài liệu HTML.
Tạo các biểu mẫu trực tuyến để thu thập thông tin về người dùng, quản lý
vàlue: giá trị được thiết lập cho thuộc tính
Ví dụ, <BODY BGCOLOR = lavender>
Trong ví dụ trên, BODY là phần tử, BGCOLOR là thuộc tính màu nền và
“lavender” là giá trị Khi cú pháp HTML được thực hiện, màu nền cho
cả trang được
Trang 16thiết lập là màu lavender.
1.5.3 Cấu trúc của một tài liệu HTML
Một tài liệu HTML gồm 3 phần cơ bản:
Phần HTML: Mọi tài liệu HTML phải bắt đầu bằng thẻ mở <HTML> và
kết thúc bằng thẻ đóng </HTML> Cặp thẻ này báo cho trình duyệt biết
nội dung giữa chúng là một tài liệu HTML
Phần đầu: Phần đầu bắt đầu bằng thẻ <HEAD> và kết thúc bởi thẻ
</HEAD> Phần này chứa tiêu đề hiển thị trên thanh điều hướng củatrang
Web Tiêu đề là phần khá quan trọng Các mốc được dùng để đánh dấu
một Website, trình duyệt sử dụng tiêu đề để lưu trữ các mốc này Dođó,
khi người dùng tìm kiếm thông tin, tiêu đề của trang Web cung cấp từ
khoá chính yếu cho việc tìm kiếm
Phần thân: Phần này nằm sau phần tiêu đề Phần thân bao gồm văn bản,
h.nh ảnh và các liên kết mà bạn muốn hiển thị trên trang Web của mình
Phần thân bắt đầu bằng thẻ <BODY> và kết thúc bằng thẻ
Những yêu cầu cần phải nghiên cứu
- Hình dung nội dung trang Web bạn cần tạo, hướng tới một đíchchung cho trang Web với những chức năng và nhiệm vụ gì?
- Đặt mình vào vị trí người xem, khách hàng Làm thế nào để nộidung trình bày thể hiện tốt nhất Ví dụ bạn có thể thêm vào âm
Trang 17thanh, hình ảnh minh hoạ cho sinh động, bố cục nội dung, trình bàysao cho hợp lý nhất.
Tổ chức tập tin
Các yếu tố làm nên trang Web đó là các tập tin, do vậy việc tổchức tập tin là rất quan trọng, nó giúp ta thuận lợi trong việc lưu trữt.m kiếm các đoạn m hay cơ sở dữ liệu của trang Web
Chia các thư mục trung tâm theo cấu trúc của trang Web, bạn cóthể tạo một thư mục riêng rẽ cho tài liệu HTML: các hình ảnh, cơ sở
dữ liệu, các tập tin bên ngoài,…
Trong trường hợp trang Web lớn với nhiều trang, bạn có thể chiathành nhiều mục hay
chương, chuyển các hình ảnh đến thư mục độc lập
Để tạo một trang Web HTML chúng ta không cần một công cụ đặcbiệt nào, chỉ cần sử dụng bất kỳ bộ soạn thảo văn bản nào nhưWordpad hay Notepad, được cung cấp kèm theo hệ phần mềmWindows
Dựa trên qui định về cấu trúc của một trang Web, kết hợp với cácthẻ cần thiết để
viết ra trang Web của mình
Lưu trang Web
Nếu ta sử dụng một trình xử lí văn bản đơn giản để tạo trang Webbạn sẽ không có vấn đề gì khi lưu trang Web Nhưng khi ta dùng mộttr.nh xử lý văn bản phức tạp thì bạn phải lưu ý những thông tin bênngoài mà chương trình sẽ đính kèm vào tập tin của bạn Để đảm bảomọi trình duyệt sẽ nhận diện được tập tin đó, bạn phải đặt phải đặtđuôi của tập tin đúng
- Mỗi tập tin được lưu phần đuôi của nó có dạng htm hay html
- Chọn thư mục thích hợp để lưu trang Web
- Xem trang Web qua trình duyệt
Khi đã tạo ra trang Web chúng ta cần xem nó như thế nào qua một trình duyệt
thông thường là Internet Explorer
1.6.SQL SERVER
Ngôn ngữ truy vấn có cấu trúc (SQL) là một ngôn cơ sở dữ liệu (CSDL) chuẩncông nghiệp được công cụ quản trị dữ liệu của Microsoft (Microsoft jet databaseengine) sử dụng SQL được sử dụng để tạo những đối tượng truy vấn (QueryDefobjects), như là đối số cho phương thức mở tập hợp bản ghi (OpenRecordset method),
và là thuộc tính nguồn bản ghi (RecordSource property) của điều khiển dữ liệu (datacontrol) Nó cũng có thể được dùng với những phương thức thi hành (Executemethod) để trực tiếp tạo và thao tác (jet databases), và tạo ra các SQL PassThroughtruy vấn để thao tác trên các CSDL khách chủ từ xa (remote client/server databases)
Trang 18Chương này sẽ bàn tới cấu trúc cơ bản của SQL, và cách thức sử dụng nó cho việctạo, bảo trì và sửa đổi CSDL Chúng ta cũng nói tới sự xây dựng và công dụng củatruy vấn SQL để tạo các đối tượng tập hợp bản ghi (Recordset objects), và để chọn,sắp xếp, lọc và cập nhật dữ liệu trong những bảng cơ sở Hơn nữa, chương này sẽ xemxét cách thức tối ưu hoá truy vấn SQL về mặt tốc độ và hiệu quả Cuối cùng, chúng tabàn tới sự khác nhau giữa Microsoft Jet SQL và ANSI SQL một cách cụ thể
SQL LÀ GÌ ?
SQL là một ngôn ngữ lập trình về CSDL có nguồn gốc liên quan mật thiết tới sựphát minh ra mô hình CSDL quan hệ của E.F.Codd vào đầu những năm 70 Tiền thâncủa SQL là ngôn ngữ Sequel, và vì lý do này SQL vẫn thường được phát âm là
“sequel” hơn là “ess cue ell”, mặc dầu cả hai cách phát âm đều được chấp nhận SQL ngày nay phát triển rộng và trở thành một ngôn ngữ chuẩn cho CSDL quan
hệ, và đã được định nghĩa bởi chuẩn ANSI Hầu hết các bản thi hành của SQL chỉ là
sự biến đổi nhỏ từ SQL chuẩn, bao gồm cả phiên bản được Jet database engine hỗ trợ.Những sự khác nhau này sẽ được nhắc tới ở cuối chương, nhưng hầu hết các cấu trúc
và các chức năng của ngôn ngữ là nhất quán đối với các nhà phát triển các hệ quản trịCSDL Nếu bạn đã sử dụng bất cứ bản thi hành nào của SQL, bạn sẽ thấy không khókhăn mấy khi chuyển sang Microsoft Jet SQL
SQL vs Navigation
Như đã đề cập trong phần đầu tài liệu, Mircosoft Jet database engine cung cấp hai phương thức tách biệt để hoàn tất hầu hết các tác vụ CSDL:
- Một mô hình điều hướng dựa trên cở sở dịch chuyển qua lại giữa các bản ghi
- Một mô hình quan hệ dựa trên truy vấn hỏi có cấu trúc (SQL)
Mô hình điều hướng bao gồm những thuộc tính và phương thức được mô tả trong
“Tạo và sửa đổi CSDL” (“Creating and Modifying Databases”) và “Thao tác với bảnghi và trường” (“Working with Records and Fields”) Mô hình quan hệ được nói bàntới trong chương này
Trang 19Những lập trình viên không quen thuộc với những hệ quản trị cơ sở dữ liệu hướngfile như dBASE, Foxpro, và Paradox có thể cảm thấy dễ chịu khi bắt đầu với cácphương thức điều hướng được thảo luận trong chương trước Tuy nhiên, trong hầu hếtcác trường hợp những phương thức SQL với vài trò tương đương tỏ ra hiệu quả hơn,
và nói chung chúng nên được dùng cho những nơi tính hiệu quả được xem là quantrọng hơn cả Hơn nữa SQL có một lợi điểm là một giao tiếp ở mức chuẩn côngnghiệp về CSDL, thế nên một sự hiểu biết về các lệnh SQL cho phép bạn truy cập vàthao tác với một diện rộng các sản phẩm CSDL từ các nhà phát triển khác nhau
CÁC THÀNH PHẦN CỦA SQL
Ngôn ngữ SQL bao gồm các lệnh, các mệnh đề, các toán tử, và các hàm tổng hợp(hàm nhóm - aggregate functions) Những thành phần này được kết hợp vào trong cácphát biểu (statements) dùng để tạo, cập nhật, và thao tác trên CSDL Những mục sau
sẽ mô tả những thành tố đó một cách ngắn gọn, và phần còn lại của chương này sẽ đưa
ra cho bạn những ví dụ cụ thể về công dụng của chúng
Chú ý: Những mục sau sẽ những lệnh và từ khoá được dùng thường xuyên nhất,nhưng không phải tất cả Để có một tham khảo hoàn chỉnh về danh sách các từ khoáSQL, hãy tìm kiếm “SQL” trong Books Online
1.6.1.Lệnh SQL:
Giống như mô hình điều hướng của DAO (Data Access Object), SQL cung cấp cảhai phần, ngôn ngữ định nghĩa dữ liệu (DDL - Data Definition Language) và ngônngữ thao tác dữ liệu (DML - Data Manipulation Language) Tuy có vài phần trùng lặp,nhưng những câu lệnh DDL cho phép bạn tạo và định nghĩa các CSDL, các trường,các chỉ mục mới, trong khi những câu lệnh DML để bạn xây dựng các truy vấn, sắpxếp, lọc, và trích dữ liệu từ trong CSDL
Trang 20DROP Dùng để xoá các bảng và chỉ mục khỏi CSDL
ALTER Dùng để sửa đổi các bảng bằng cách thêm trường, thay đổi định nghĩa củacác trường
DML
Các câu lệnh DML là các biểu thức được xây dựng dựa trên các mệnh đề sau:
SELECT Dùng để truy vấn CSDL để lấy được những bản ghi thoả mãn những tiêuchuẩn nào đó
INSERT Dùng để chèn một nhóm dữ liệu vào CSDL thông qua một thao tác
UPDATE Dùng để thay đổi giá trị của những trường, những bản ghi cụ thể
DELETE Dùng để loại bỏ những bản ghi ra khỏi CSDL
1.6.2.Mệnh đề SQL:
Mệnh đề là những điều kiện thay đổi được dùng để xác định dữ liệu bạn muốn chọn, muốn thao tác Bảng sau liệt kê những mệnh đề bạn có thể dùng
FROM Liệt kê danh sách các bảng mà ta cần lấy các bản ghi từ đó
WHERE Xác định các điều kiện mà bản ghi được chọn phải đáp ứng được
GROUP BY Dùng để nhóm các bản ghi được chọn thành các nhóm riêng biệt
HAVING Dùng để đưa ra điều kiện cho mỗi nhóm
ORDER BY Dùng để sắp xếp các bản ghi được chọ theo một thứ tự nào đó
Trang 21Những toán tử logic bao gồm: AND, OR, NÓT
AVG Trả lại giá trị trung bình trong một trường COUNT Trả lại số bản ghi được chọn
SUM Hàm tính tổng các giá trị trong một trường cụ thể
MAX Hàm trả về giá trị cực đại của trường đó
MIN Hàm trả về giá trị cực tiểu của trường đó
NHỮNG THAO TÁC DLL
Trang 22DDL bao gồm một số lệnh bạn có thể dùng để tạo bảng và chỉ mục, và sửa đổi cácbảng bằng cách thêm hoặc loại bỏ các cột hoặc chỉ mục Những câu lệnh định nghĩa
dữ liệu có thể chỉ được dùng với Jet database; Chúng không được hỗ trợ cho bất cứCSDL định dạng ngoài
Chú ý: Để dùng câu lệnh DDL, hoặc bất cứ truy vấn nào không trả lại tập bản ghi,hãy đóng ngoặc kép và sử dụng chúng như là đối số của các phương thức thi hành củaCSDL hay đối tượng truy vấn (QueryDef object) như trong ví dụ sau:
MyDB.Execute “CREATE TABLE Employees ([First Name] TEXT, [Last_Name] TEXT)”;
Để dùng bất cứ một câu lệnh nào trả lại các bản ghi (như SELECT), dùng biểuthức như là đối số nguồn của phương thức mở tập bản ghi (OpenRecordset method),như trong ví dụ sau:
MyDB.OpenRecordset (“SELECT * FROM Titles WHERE Au_ID = 5”, _dbOpenDynaset);
Trang 23Chương 2: Khảo sát & Phân tích thiết kế hệ
gian của khách hàng Vì vậy xây dựng “ Website bán điện thoại ” nhằm mục đích:
Nhằm đáp ứng nhu cầu mở rộng thị trường tiêu thụ hàng hoá
Thông tin luôn được cập nhật mới và luôn đáp ứng được nhu cầu thông tin
Tiết kiệm được thời gian chi phí đi lại cho khách hàng
Với thời đại thông tin phát triển như vũ bão hiện nay, khái niệm Internet khôngcòn xa lạ đối với mọi người, việc đưa những sản phẩm, những thông tin hỗ trợ lênmạng đang trở nên một nhu cầu cần thiết cho mọi người
2.1.2 Yêu cầu
Với mục tiêu dặt ra ở trên, “Website Bán điện thoại” sẽ cung cấp những thông tin
về các mặt hàng một cách trực quan sinh động, chính xác và đầy đủ
- Hỗ trợ khách hàng: Cho phép người dùng trên Internet liệt kê, tìm kiếm, chọn và
đặt hàng, thanh toán qua mạng Đảm bảo An toàn khi mua hàng và thông tin kháchhàng khi mua hàng không bị người khác thâm nhập nhằm tạo sự thân thiện cho kháchhàng khi mua hàng Ngoài ra giao diện dễ nhìn, màu sắc trang nhã, dễ hiểu đối vớingười sử dụng
- Hỗ trợ cho người quản trị: Bao gồm tất cả các chức năng quản trị, cập nhập sản
phẩm mới, xử lí, điều khiển hay quản lí các nghiệp vụ cũng như các chức năng kháccủa ứng dụng này Có thể thao tác trên cơ sở dữ liệu thông qua giao diện Web nhưđọc, ghi, chỉnh, sửa… công thức tính hoá đơn bán hàng Ngoài ra để an toàn cho hệthống thì người quản trị sẽ có mật khẩu truy cập hệ thống
Trang 242.2.Phân tích thiết kế hệ thống
2.2.1.Yêu cầu đề tài
Xây dựng một cửa hàng bán hàng trên mạng là đề tài trong đó chủ yếu là xử lý quátrình bán hàng giữa cửa hàng với khách hàng là những người sử dụng Internet Chúng
ta cũng có thể hiểu bán hàng ở đây cũng giống như bán hàng ở các cửa hàng nhưng cócái khác là ở đây khách hàng gián tiếp mua hàng Vậy nhiệm vụ chúng ta đề ra là làmthế nào để đáp ứng đầy đủ các nhu cầu cho khách hàng
2.2.2.Hoạt động của cửa hàng trên mạng
Hoạt động của khách hàng
Một khách hàng khi tham quan cửa hàng họ sẽ đặt vấn đề cửa hàng bán những gì,thông tin những sản phẩm được bán, giá cả và hình thức thanh toán Do đó để đáp ứngđược nhu cầu tối thiểu trên thì cửa hàng trên Internet phải đặc biệt cung cấp nhữngthông tin cần thiết, có giá trị và hơn thế nữa là dễ thao tác Các sản phẩm khi bán phải
có hình ảnh, thông tin về các loại sản phẩm
Hoạt động của nhà quản lý
Đối với cửa hàng Internet, việc quản lý một công việc tương đối mới Người quản
lý giao tiếp và theo dõi khách hàng của mình thông qua các đơn đặt hàng có thể cungcấp thông tin cho mình Nhà quản lý dựa trên thông tin đó để giao hàng Gửi hoá đơnkèm theo hoặc gửi theo Email mà khách hàng cung cấp
Về phía nhà quản lý ngoài việc nhận thông tin từ khách hàng còn phải đưa thôngtin về các loại sản phẩm, các sản phẩm bán trên Internet Nhà quản lý phải xây dựngmột cơ sở dữ liệu phù hợp, không thừa dữ liệu và phải nhất quán, một giao diện thânthiện giúp khách hàng không bỡ ngỡ khi bước vào cửa hàng ảo
Hoạt động của nhà quản lý có thể đưa ra những nhiệm vụ sau:
- Giới thiệu sản phẩm: Khi khách hàng vào một cửa hàng thì họ thường đặt câu
hỏi “ Cửa hàng bán những sản phẩm gì và có những gì tôi cần không? ” Phải nhanhchóng đưa khách hàng tới nơi sản phẩm mà họ cần, đó là nhiệm vụ của người quản lý