Active Server Page Unleashed, Stephan Walth9. ASP Database, Nhóm tác gi ả SAIGONBOOK.[r]
(1)(2)
Chương
GIỚI THIỆU MẠNG INTERNET 1. SƠ LƯỢC VỀ MẠNG INTERNET
1.1. Lịch sử mạng Internet
Mạng Internet xuất phát từ mạng ARPANET Mỹ ngày
đã trở thành mạng toàn cầu kết nối hàng trăm triệu người
giới Mạng máy tính tồn cầu Internet có thểđược xem mạng tất mạng (network of networks), người dùng máy tính truy cập tới thơng tin máy khác (nếu phép) Mạng Internet ban đầu biết tên ARPANET tổ chức Advanced Research Projects Agency (ARPA) Mỹ thiết lập năm 1969
Mục đích mạng tạo sở cho máy tính nghiên cứu trường đại học kết nối trao đổi với Thiết kế ARPANET độc đáo chỗ mạng
hoạt động phần bị phá hủy trường hợp chiến tranh thiên tai
Ngày mạng Internet mạng công cộng kết nối hàng trăm triệu người giới Về mặt vật lí, mạng Internet sử dụng phần toàn tài nguyên mạng viễn thông công cộng tồn (public telecommunication networks) Về mặt kĩ
thuật, mạng Internet sử dụng tập giao thức gọi chung TCP/IP (Transmission Control Protocol/Internet Protocol) Hai mô công nghệ mạng Internet intranet and extranet sử dụng giao thức
Sự đời giao thức HTTP HMTL đánh dấu bước ngoặc việc sử dụng Internet Cho tới năm 1990 dịch vụ Internet e-mail, listserv, telnet, ftp Năm 1992, Tim Berners-Lee, nhà vật lí học CERN phát triển giao thức cho World Wide Web (WWW) Trong tìm kiếm cách để liên kết tài liệu khoa học lại với nhau, tạo Hypertext Markup Language (HTML), tập Standard Generalized Markup Language (SGML)
Từ chuẩn cho tài liệu văn bản, HTML ngày
chứa hình ảnh, âm thanh, video, cho phép phát triển ứng dụng thông qua Common Gateway Interface (CGI), ASP, JSP, PHP, Java Servlet,
Hình 1.1 – Mơ hình mạng Internet
1.2. Một số kiến thức liên quan đến mạng Internet 1.2.1. Địa IP (IP Address)
Địa IP số 32-bit dùng để xác định đối tượng nhận gửi thông tin Internet Khi bạn yêu cầu trang HTML hay gửi e-mail, địa IP bạn sẽđược gửi gói tin đến địa IP người nhận Một người nhận nhận yêu cầu bạn, họ địa IP mà bạn gửi kèm để gửi kết trả
về
Đểđơn giản hóa người ta phân số thành số bit viết cách dấu chấm “.” Vì máy phần mạng nên người ta chia địa IP thành phần phần mô tả mạng (network) mà máy thuộc phần mơ tả máy (local host) Nếu tất bit vùng mơ tả máy 0, địa IP dùng để mô tảđịa mạng (network address); Nếu tất bit vùng mô tả
máy 1, địa IP địa broadcast (broadcast
(3)address); Nếu không thuộc hai trường hợp trên, địa IP dùng
để mô tảđịa máy (host address)
Địa IP tự khơng chứa thơng tin phần mô tả mạng, phần mô tả máy mà thành phần subnet mask kèm với địa cung cấp thông tin Theo qui ước, vùng bit xác định vùng mô tả mạng, vùng bit xác định vùng mô tả máy Trong subnet mask gồm dãy liên tục bit dãy liên tục bit nằm liên tiếp tính từ trái sang
Các địa IP phân thành lớp A, B, C tùy theo giá trị bytes Theo thì:
Class Available Network
Address # of Networks # of Hosts Default Subnet
A - 126 126 16.7 million 255.0.0.0
B 128.xxx – 191.xxx 16.384 65.536 255.255.0.0
C 192.xxx.xxx – 223.xxx.xxx
2.097.152 256 255.255.255.0
Việc phân chia địa IP Internet ICANN chịu trách nhiệm Địa IP thường quản lí nhà cung cấp dịch vụ
Internet (ISP – Internet Service Provider) Các địa IP thường
được gọi nôm na địa IP thực Nếu bạn muốn thiết lập website mà người dùng Internet truy cập vào được, máy chủ chứa website phải có địa IP thực Nếu bạn khơng có địa IP thực, bạn phải sử dụng dịch vụ webhosting để thuê chỗ đặt website máy chủ có địa IP thực kết nối với
Internet Hình 1.2 - Minh họa thiết lập giao thức TCP/IP
1.2.2. Tên miền (Domain name)
Tên miền có thểđược xem tên giao dịch công ty hay tổ chức Internet Tên miền cơng ty thương mại thường có dạng yourcompany.com Ví dụ, cơng ty Intel lấy tên miền intel.com; công ty Microsoft lấy tên miền microsoft.com;
Việc đưa khái niệm tên miền giúp cho việc truy cập đến tài nguyên Internet dễ dàng Việc ánh xạ qua lại tên miền địa IP máy phục vụđược thực DNS Server
(4)Ví dụ địa chỉwww.intel.com cho ta số thơng tin sau: địa máy thuộc tổ chức sở hữu tên miền intel.com
(chính công ty Intel) Địa IP máy
192.102.198.160 (sử dụng chương trình nslookup để tra) máy có tên “www” (thơng thường máy cung cấp dịch vụ web) Phần "com" tên miền mơ tả mục đích tổ chức (trong trường hợp "commercial" – thương mại) gọi tên miền cấp (top-level domain name) Phần trước dấu “.” tên miền thông thường tên tổ chức (ví dụ nhưintel) gọi tên miền cấp (second-level domain name) Tên miền cấp thông thường dùng đểđịnh nghĩa máy phục vụ cụ thể
đó tồn chúng sẽđược ánh xạ tới địa Internet
Tên miền cấp bao gồm mã quốc gia nước tham gia Internet quy định hai chữ theo tiêu chuẩn ISO -3166 Việt nam VN , Anh quốc UK, Nhật JP, lĩnh vực dùng chung, có dùng chung cho tồn cầu dùng Mỹ
Năm tên miền cấp dùng chung là:
• .com: cơng ty thương mại (commercial)
• .edu: trường học, tổ chức giáo dục (education)
• .net: mạng (network)
• .int: tổ chức quốc tế (international organizations)
• .org: tổ chức khác (other organizations) Hai tên miền cấp dùng Mỹ là:
• .gov: tổ chức phủ (government)
• .mil: tổ chức quân (military)
Một địa IP có thểđược ánh xạ cho nhiều tên miền Điều cho phép nhiều cá nhân, công ty tổ chức chia sẻ Internet server
Do tầm quan trọng tên miền nên bước việc xây dựng website thiết lập tên miền cách mua từ công ty uỷ quyền bán tên miền (http://www.internic.net) Các tên miền có .com thơng dụng giao dịch quốc tế Ngoài ra, công ty Việt nam thường hay lấy tên miền có .com.vn Để sở hữu tên miền, bạn phải trả chi phí
hàng năm Nếu hết thời hạn sở hữu mà bạn khơng trả chi phí, tên miền bị người khác mua lại (và khó khăn bạn muốn địi lại tên miền từ tay người khác) Trên Internet có nhiều người thường mua trước tên miền cơng ty mà họ dựđốn tiếng chưa lập trang web Sau công ty cần tên miền, họ bán lại với giá đắt Tuy nhiên, bạn mua trước tên miền mà chưa cần lập website
Hình 1.3 – Phân cấp tên miền
2. CÁC DỊCH VỤ CƠ BẢN CỦA MẠNG INTERNET 2.1. World Wide Web (WWW)
Đây dịch vụ thông dụng Internet Để sử dụng dịch vụ
này, người dùng cần có trình duyệt web thường gọi browser Hai trình duyệt thơng dụng Internet Explorer công ty Microsoft Netscape Navigator công ty Netscape
Để truy cập vào trang web, bạn cần phải biết địa (URL - Uniform Resource Locator) trang web Ví dụ, để truy cập vào
trang web công ty Microsoft, bạn gõ vào:
http://www.microsoft.com/ms.htm Do dịch vụ sử dụng giao thức HTTP (Hypertext Transfer Protocol) nên địa trang web
được bắt đầu http://
(5)Hình 1.4 – Dùng IE để truy cập trang web công ty Microsoft
Trong trang web mà bạn truy cập vào, bạn thấy văn bản, hình ảnh, âm thanh, trang trí trình bày
đẹp mắt Ngồi ra, để di chuyển tới trang web khác, bạn sử dụng hyperlink (siêu liên kết) Do trỏ chuột thường thay đổi hình dạng ngang qua đối tượng có chứa hyperlink nên
đây cách đơn giản để nhận diện chúng
Sự đời www thực bước ngoặt lớn mạng Internet tạo hội cho bạn truy cập đến kho thông tin khổng lồ với hàng triệu triệu trang web Điều mở nhiều hội thách thức lớn cho công việc bạn tương lai
2.2. Thưđiện tử - Email
E-mail (electronic mail) dịch vụ trao đổi thông điệp điện tử
bằng mạng viễn thơng Các thơng điệp thường mã hóa dạng văn ASCII Tuy nhiên bạn gửi tập tin hình ảnh, âm tập tin chương trình kèm theo email E-mail dịch vụ nguyên thủy Internet
được sử dụng rộng rãi Chiếm phần lớn thông lượng mạng Internet e-mail
Giao thức thường dùng để gửi/nhận e-mail SMTP(Simple Mail Transfer Protocol)/POP3 (Post Office Protocol 3)
Để sử dụng dịch vụ email, bạn cần phải có:
• Địa email Một địa email thường có dạng
name@domainname Ví dụ, địa email
duyld@yahoo.com, duyld đóng vai trị tên, yahoo.com tên miền
• Địa email quản lí mail server Tại Việt Nam, nhà cung cấp dịch vụ email thường ISP VDC, FPT, SaigonNet Do đó, tên miền địa email bạn thường là: hcm.vnn.vn, hn.vnn.vn, hcm.fpt.vn, fpt.vn, saigonnet.vn, Tuy nhiên, có nhiều website Internet cung cấp dịch vụ email miễn phí Thơng dụng Yahoo, Hotmail,
• Tên đăng nhập mật để truy cập vào hộp thư: Điều đảm bảo có bạn đọc gửi thư
của
2.3. Truyền, tải tập tin - FTP
FTP (File Transfer Protocol) dịch vụ dùng để trao đổi tập tin máy tinh Internet với FTP thường dùng
để tải trang web từ người thiết máy chủ Nó thường dùng để tải chương trình tập tin khác từ máy chủ mạng
Một số chương trình FTP với giao diện đồ họa thân thiện hữu ích là:
• WS_FTP (http://www.ipswitch.com)
• CuteFTP (http://www.cuteftp.com)
• FTP Explorer (http://www.winsite.com)
2.4. Tán gẫu - Chat
Dịch vụ tán gẫu cho phép người dùng trao đổi trực tuyến với qua mạng Internet Cách thông dụng trao đổi văn Nếu đường truyền tốt, bạn trị chuyện tương tự
nói chuyện điện thoại
(6)cứng, hầu hết dung lượng đĩa mà nhà cung cấp hỗ trợ vượt q nhu cầu thơng thường, ví dụ 5GB, 10GB, 100GB
2.4. Các ngơn ngữ lập trình hỗ trợ
Với website có lập trình, ngơn ngữ lập trình server-side cần phải xem xét đến cách thận trọng Hiện thông dụng web ngôn ngữ PHP, JSP, ASP Sử
dụng ASP đòi hỏi hệđiều hành phải Windows thơng thường chi phí cao so với PHP PHP tích hợp sẵn Apache Linux
2.5. Hệ quản trị sở liệu hỗ trợ
Một ứng dụng web thật sựđịi hỏi phải có sựước lượng chi phí bỏ nhu cầu cần có bàn đến việc chọn hệ quản trị CSDL để hỗ trợ Nếu dùng Microsoft có Microsoft Access hay Microsoft SQL Server, cịn dùng Unix hay Linux có mSQL, MySQL, hay PostgreSQL MS SQL Server mạnh nhiều so với Access MySql PostgreSQL so với mSQL Tuy nhiên cần ý đến vấn đề giá cả, ví dụ dùng MS Access cung cấp miễn phí, dùng MS SQL Server phải trả tiền quyền, bảo trì hệ thống, …
2.6. Hỗ trợ kĩ thuật
Vấn đề quan trọng trục trặc lúc vận hành hệ thống bạn khơng sửa chữa kịp thời, dẫn
đến nhiều hội kinh doanh Các hình thức hỗ trợ kĩ thuật cung cấp thường email, chat hay điện thoại trực tiếp tư vấn Lưu ý chi phí tỉ lệ thuận với chất lượng hình thức tư vấn,
2.7. Các tính khác
Ngồi cần xem xét đến tính khác như:
• Hỗ trợ SSL cho giao tác an tàn tên mạng trả tiền, chuyển tiền hay khơng
• Hỗ trợ việc truy xuất đến liệu thống kê cho phép tổng hợp đánh giá khách hàng tham quan website
• Hỗ trợ nghe nhạc xem video trực tiếp mạng mà không cần tải tồn
• Số email accounts cung cấp hỗ trợ mailing lists
• Giá cho việc sử dụng vượt băng thông dung lượng cho phép
• Hỗ trợ giao tiếp (control panel for graphical access) thuận tiện việc quản lí website
• Hỗ trợ tư vấn an ninh hệ thống
• Các component hỗ trợ sẵn
2.8. Các nhà cung cấp dịch vụ hosting hàng đầu giới hiện
• Lunarpages.com
• iPowerWeb.com
• ICDSoft
• Globat.com Tham khảo
• http://www.tophostinfo.com/review1.htm
• http://www.webhosting-reviews.com/comm1.htm
• http://www.practicallynetworked.com/serving/webhost/
• http://www.webhostingratings.com/
• http://www.findmyhosting.com/
(7)TÀI LIỆU THAM KHẢO Active Server Page Unleashed, Stephan Walth
9 Xây dựng trang web động với ASP, Nhóm tác giả ELICOM 10 ASP Database, Nhóm tác giả SAIGONBOOK
11 Tự học Lập trình Thương mại Điện tử với ASP 21 ngày, Nhóm tác giả SAIGONBOOK
12 http://www.learnasp.com
13 http://www.4guysfromrolla.com 14 http://www.15seconds.com
15 http://asp.superexpert.com
16 http://www.fit.hcmuns.edu.vn/~ldduy/WebCourse
MỤC LỤC
CHƯƠNG 1: GIỚI THIỆU MẠNG INTERNET
1 Sơ lược mạng Internet
2 Các dịch vụ mạng Internet
3 Khai thác tài nguyên mạng Internet 11
4 Một số thuật ngữ thông dụng 20
5 Một số câu hỏi thường gặp 21
Câu hỏi 28
Thực hành 29
CHƯƠNG 2: THIẾT LẬP WEBSITE 37
1 Cài đặt webserver 37
2 Cấu hình webserver 43
3 Một số vấn đề liên quan đến an toàn 49
4 Một số câu hỏi thường gặp 51
Câu hỏi 54
Thực hành 55
CHƯƠNG 3: THIẾT KẾ TRANG WEB 61
1 Giới thiệu HTML 61
2 Một số tag HTML 63
3 Định dạng bảng biểu 69
4 Form thành phần form 71
5 Frame 77
6 Cascading Style Sheet 79
Thực hành 83
(8)CHƯƠNG 4: CÁC NGÔN NGỮ SCRIPT HỖ TRỢ LẬP TRÌNH WEB
129
1 Giới thiệu VBScript JavaScript 129
2 Sử dụng VBScript 130
3 Sử dụng JavaScript 139
4 Sử dụng VBScript JavaScript trang web 144
5 Dấu mã VBScript/JavaScript 147
6 Một số ví dụ minh họa 148
Thực hành 157
CHƯƠNG 5: NHẬP MÔN ASP 159
1 Giới thiệu ASP 159
2 Các khái niệm ASP 160
3 Xử lí liệu nhập từ người dùng 163
4 Xử lí kết xuất liệu 165
5 Kết nối với sở liệu 172
6 Những câu hỏi thường gặp 180
Thực hành 184
Bài tham khảo: Lập trình Web ASP với tiếng Việt Unicode 185
Bài tham khảo: Kết xuất liệu dạng Excel từ trang ASP 195
CHƯƠNG 6: ASP NÂNG CAO 199
1 Đối tượng Response 199
2 Đối tượng Request 201
3 Application Session 208
4 Cookies 213
5 Đối tượng Server 216
6 Xử lí lỗi với đối tượng ASPError 218
7 ADO nâng cao 219
8 Đối tượng FileSystemObject 225
9 Gửi email CDONTS 227
10 Một số kĩ thuật khác 233
Bài tham khảo: Hiển thị hình ảnh từ sở liệu ứng dụng web 236
Bài tham khảo: Phương pháp hỗ trợ giới hạn truy cập trang web 241
Bài tham khảo: Bảo vệ sở liệu Access ứng dụng web 245
Bài tham khảo: Bảo vệ ứng dụng web chống công kiểu SQL Injection 248
CHƯƠNG 7: ỨNG DỤNG MINH HỌA CỬA HÀNG SÁCH TRỰC TUYẾN 253
1 Giới thiệu vềứng dụng 253
2 Tổ chức website ứng dụng 253
3 Thiết kế sở liệu 253
4 Kết nối với sở liệu 255
5 Thao tác truy vấn sở liệu 256
6 Thao tác thêm mẩu tin vào sở liệu 258
7 Thao tác cập nhật mẩu tin sở liệu 259
8 Thao tác xóa mẩu tin sở liệu 262
9 Sử dụng Cookies 262
10 Những câu hỏi thường gặp 274
Thực hành 276
Đồ án 277
Bài tham khảo: Web Hosting – Dịch vụ thuê chỗ website Internet 278
TÀI LIỆU THAM KHẢO 283
MỤC LỤC 284