Bài giảng Lập trình Web bằng ASP
mục lục. 1
PHầN 1: cơ bản về html vàVBSCRIPT . 3
I. CáC THẻ Để TạO PHầN Tử HTML CƠ BảN . 3
1. Cú pháp chung: . 3
2. Tạo một số phần tử cơ bản . 3
II. Ngôn ngữ VBScript (ng . 6
1. Nhúng câu lệnh VBSCRIPT vào trang web. 6
2. Gắn kết mã lệnh VBSCRIPT lên các sự kiện . 6
3. Ghi và đọc dữ liệu trong TextBox . 7
4. Đọc dữ liệu trong ComboBox: Giống nh-Listbox . 7
5. Đọc / Ghi giá trị trong CheckBox . 7
Phần II : ASP . 9
I. ASP là gì ? . 9
II. Cấu trúc của một file ASP . 9
2. Một số l-u ý: . 9
Đối t-ợng Response . 9
0. Vấn đề giao tiếp (nhập xuất) giữa ng-ời dùng và webserver. . 9
1. Chức năng (Chính) . 9
2. Một số ph-ơng thức dùng: . 9
2.1 Ph-ơng thức write . 9
T-ơng đ-ơng với: . 10
2.2 Ph-ơng thức Redirect . 10
đối t-ợng Request . 10
1. Chức năng . 10
2. Một số thuộc tính và ph-ơng thức th-ờng dùng . 11
2.1 Thuộc tính Form . 11
2.2 Thuộc tính QueryString . 14
đối t-ợng server .18
1. Ph-ơng thức Mappath . 18
2. Ph-ơng thức CreateObject . 20
đối t-ợng session – biến sesstion . 20
1. Biến Sesstion . 20
2. Đối t-ợng Session . 20
đối t-ợng application . 23
1. Khái niệm biến toàn ứng dụng . 23
2. Đối t-ợng Application . 24
3. Ví dụ tổng hợp . 24
chèn file vào trang asp . 25
1. ý nghĩa:. 25
2. Cú pháp chèn file: . 25
3. Ví dụ tổng hợp . 25
kết nối vàthao tác với csdl trong asp . 26
1. Qui tắc chung . 26
2. Tạo đối t-ợng Connection và kết nối đến CSDL . 26
3. Tạo đối t-ợng Recordset . 27
4. Một số ví dụ . 27
4.1 Hiển thị toàn bộ tên nhà cung cấp (CompanyName) trong bảng Suppliers . 27
4.2.1 Hiển thị danh sách các sản phẩm trong một bảng . 29
PHụ LụC 1: DANH SáCH CáC THẻ TRONG JAVASCRIPT . 30
PHụ lục 2: DANHSáCH CáC HàM TRONG VBSCRIPT . 34
PHụ LụC 3: MộT Số CÂU LệNH SQL THƯờng dùNG VàVí Dụ . 36
I. Đọc thông tin (Câu lệnh SELECT) . 36
II. Chèn thêm bản ghi (Bổ sung)– Câu lệnh Insert into . 37
III. Xóa bản ghi – Câu lệnh Delete . 37
IV. Cập nhật bản ghi – Câu lệnh Update . 37
PHụ LụC 4: CàI ĐặT IIS (WEBSERVER) VàCHạY CáC TRANG ASP . 38
I. Cài đặt Internet Information service (IIS) – web server . 38
II. Cấu hình trình duyệt để chạy các file ASP .38
III. Copy các file ASP vừa soạn thảo vào th-mục web để chạy. . 40
IV.Chạy file ASP . 41
phụ lục 5 h-ớng dẫn tạo domain trong máy cục bộ . 41
phụ lục 6: cài đặt ftp để đ-a trang web lên server. 46
I. Cài đặt cuteFTP. 46
II. Sử dụng FTP . 46
Phần III: Thực hành BàI THựC hàNH Số 1 . 49
bài thực hành số 2. 51
bài thực hành số 3. 54
bài thực hành số 4. 58
IIS Server chạy. Biến này thường được dựng để lưu cỏc thụng tin mang ý nghĩa toàn cục, vớ dụ như số lượng người truy cập v.v… Bài 01: Tạo biến toàn cục cú tờn là SoNguoiTruyCap, và hiển thị giỏ trị của nú trong trang cú tờn là : Test.asp Bước 1: Tạo trang Global.asa cú nội dung như sau (Lưu ý: Tờn phải là Global.asa): Bước 2: Tạo trang Test.asp để hiển thị và thay đổi giỏ trị của biến toàn cục, cú nội dung như sau : Sub Application_OnStart Application(“SoNguoiTruyCap”) = 0 ‘// Tạo biến toàn cục tờn là SoNguoiTruyCap End Sub Trang Global.asa <% Response. Write("Giỏ tr ca bin toàn cc là : " &Application("SoNguoiTruyCap")) Applicathon("SoNfuoiTruyCap") = Application("SoNguoiTruyCap") + 1 Response. Write(" Giỏ tr ca bin bõy gi là : " &Application("SoNguoiTruyCap")) %> Trang Test.asp 55 # *** Nhận xột***: - Vỡ SoNguoiTruyCap là một biến toàn cục, do vậy nú vẫn tồn tại ngay cả khi bạn đó đúng tất cả cỏc cửa sổ trỡnh duyệt. Sự thay đổi này cú tỏc dụng đối với mọi người dựng truy nhập vào Website. - Để tạo một biến toàn cục, chỳng ta viết: Application("") = như ở trờn. - Thủ tục sự kiện Application_OnStart và Session_OnStart được gọi mỗi khi một trang ASP được mở, trong cỏc thủ tục này chỳng ta cú thể viết cỏc cõu lệnh ASP, kể cả việc truy cập vào CSDL. Bài 02: Đếm số lượt người truy cập vào Website Yờu cầu: Xõy dựng một trang Web cú tờn là Index.asp. Trong trang này sẽ hiển thị số lượng người đó truy cập. ) Lưu ý: Vỡ mỗi một khỏch vào thăm trang Web thỡ thủ tục sự kiện Session_OnStart được gọi một lần, do vậy để đếm số lượng người truy cập thỡ trong thủ tục này ta chỉ cần tăng biến toàn cục SoNguoiTruyCap lờn 1 đơn vị là đủ. Tức là trong tệp Global.asa bạn cần thờm cỏc cõu lệnh sau: 2. Biến Session Biến Session là biến toàn cục dựng để lưu thụng tin hoặc trạng thỏi của một người dựng cụ thể nào đú trong một phiờn làm việc, Vớ dụ: Dựng để lưu trạng thỏi đăng nhập (Thành cụng hay khụng thành cụng) của một người dựng. Chào mng bn ó n vi Website ca lp chỳng tụi ! <% Response. Write(" Bn là v khỏch th " &Application("SoNguoiTruyCap")) %> Trang Index.asp Sub Application_OnStart Application(“SoNguoiTruyCap”) = 0 ‘/// Tạo biến toàn cục tờn là SoNguoiTruyCap End Sub Sub Sesstion_OnStart '/// Thủ tục này được gọi khi cú 1 người mới viếng thăm Application(“SoNguoiTruyCap”) = Application(“SoNguoiTruyCap”) + 1 End Sub Trang Global.asa 56 Biến Session chỉ tồn tại trong thời gian Session được tạo ra, nú khụng ảnh hưởng đến cỏc Session khỏc. Để tạo biến Session, cần đặt cõu lệnh trong file Global.asa và trong thủ tục Sub Session_OnStart lệnh sau: Session(“”) = Sau đõy chỳng ta sẽ sử dụng biến Session để lưu trạng thỏi đăng nhập của người dựng. Và tạo 1 trang đăng nhập. Bài 02: Xõy dựng 2 trang ASP cú tờn lần lượt là : Xoa.asp và trang Login.asp. Trang xoỏ cú nội dung như sau (Thực tế giống như trang Xoa.asp trong Project01): “Loại bỏ sản phẩm “. Và trang này chỉ hiển thị nếu người dựng đó đăng nhập với Tờn là “tk33” và mật khẩu là “123”. Nếu người dựng chưa đăng nhập thỡ mở trang Login.asp để đăng nhập. n Khai bỏo biến Session(“DaDangNhap”) trong file Global.asa như sau: o Xõy dựng trang Login.asp Đăng nhập hệ thống Thụng tin đăng nhập Tờn đăng nhập : Mật khẩu: <% IF Request.Form(“UserName”) = “tk33” And Request.Form(“Password”) = “123” Then Session(“DaDangNhap”) = “roi” ‘// Ghi nhớ lại là đó đăng nhập thành cụng rồi. Response.write(“Bạn đó đăng nhập thành cụng ! Về trang chủ ”) Else Response.write(“Tờn và mật khẩu sai ! Xin hóy nhập lại.”) End IF %> # Thực tế, việc kiểm tra người dựng ở trờn, chỳng ta sẽ so sỏnh với chi tiết người dựng trong CSDL. Sub Sesstion_OnStart '/// Thủ tục này được gọi khi cú 1 người mới viếng thăm Session(“DaDangNhap”) = “chua” ‘/// Biến Đó đăng nhập khởi tạo = “chưa” End Sub Trang Global.asa File Global.asa 57 p Trang Xoa.asp Nõng cấp trang Login.asp Đăng nhập hệ thống Thụng tin đăng nhập Tờn đăng nhập : Mật khẩu: <% Dim Ten, MatKhau, strSQL Ten = Request.Form(“UserName”) MatKhau = Request.Form(“Password”) IF Ten “” Then ' /// Chỉ kiểm tra nếu người dựng đó nhập Username & Password strSQL =“Select* from tblUserDetail Where Ten=’” &Ten & “’ AND MatKhau =’“ &MatKhau &”’” Set Rs = Cn.Execute(strSQL) IF Rs.RecordCount > 0 Then Session(“DaDangNhap”) = “roi” Response.write(“Bạn đó đăng nhập thành cụng ! Về trang chủ ”) Else Response.write(“Tờn và mật khẩu sai ! Xin hóy nhập lại.”) End IF End IF %> trang Login.asp <% IF Session(“DaDangNhap”) = “roi” Then ‘// Thực hiện cỏc cõu lệnh ở đõy Response.write(“Bản ghi đó bị xoỏ ! “) Response.write(“Bạn muốn xoỏ tiếp hay khụng ?”) Else Response.write(“Bạn chưa đăng nhập. Login”) End IF %> Trang Global.asa Xoa.sp 58 bμi thực hμnh số 4 Mục tiờu: Kết thỳc bài thực hành, Sinh viờn cú thể: • Tớch hợp cơ chế bảo mật (Login) vào ứng dụng Web • Xử lý được cỏc mục dữ liệu truyền đi và nhận về với số lượng lớn • Mụ phỏng được hệ thống bỏn hàng trực tuyến. Nội dung: Xõy dựng 3 trang cú tờn lần lượt là: DatHang.asp, Thongke.asp và ThanhToan.asp. Được mụ tả theo chức năng như sau: Trang Dathang.asp cú chức năng hiển thị cỏc mặt hàng và cho phộp người dựng đặt số lượng tương ứng. Sau khi người dựng click vào nỳt "Đặt hàng" thỡ toàn bộ Tờn sỏch, số lượng cũng như giỏ của mỗi loại sỏch sẽ được gửi sang trang ThongKe.asp. Trang Thongke.asp sẽ tiếp nhận cỏc thụng tin này đồng thời hiển thị thờm cột thành tiền và tổng số tiền mà khỏch hàng đó đặt mua để khỏch hàng xem lại một lần nữa trước khi thực hiện thanh toỏn. Trang này cũng một nỳt "Chấp nhận" và Sau khi người click vào nỳt này thỡ tổng số tiền mua sẽ được gửi đến trang ThanhToan.asp để thực hiện khấu trừ tiền của khỏch hàng và cộng thờm vào tài khoản của người bỏn (Giả định là mó số của người bỏn là 'seller'). Cơ sở dữ liệu sỏch cú 2 bảng như sau: tblSach tblUserDetail Tờn trường Mụ tả Tờn trường Mụ tả MaSach Mó sỏch MaNguoiDung Mó người dựng TenSach Tờn sỏch MatKhau Mật khẩu TenTacGia Tờn tỏc giả SoDuTaiKhoan Số dư tài khoản TenNXB Tờn NXB SoTrang Số trang Gia Giỏ Trang KetNoi.Inc cú nội dung như sau: <% Dim Cn, Rs Dim strCn '///// Tạo kết nối sau đú thực hiện kết nối đến CSDL /////////////////////// Set Cn = Server.CreateObject("ADODB.Connection") ' /// Tạo đối tượng Connection Cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & Server.Mappath("Book.mdb") Cn.CursorLocation = 3 Cn.Open ' /// Thực sự mở kết nối đến CSDL Book.mdb %> 59 Đặt hàng trực tuyến ĐẶT MUA SÁCH TRỰC TUYẾN Tờn sỏch Số lượng Đơn giỏ <% Dim i i=1 Set Rs = Cn.Execute("Select * from tblSach") Do while not Rs.EOF Response.write("") Response.write("") Response.write(" ") Response.write(" ") i = i + 1 Rs.MoveNext Loop %> > Trang DatHang.asp Sub Sesstion_OnStart '/// Thủ tục này được gọi khi cú 1 người mới thăm Session(“DaDangNhap”) = “chua” ‘/// Biến DaDangNhap khởi tạo=“chưa” Session(“UserName”) = “” ‘/// Biến tờn của người dựng End Sub Trang Global.asa Global.asa 60 Đặt hàng trực tuyến CÁC CUỐN SÁCH BẠN ĐÃ ĐẶT MUA Nếu bạn đồng ý mua, hóy click vào nỳt "Đồng ý mua" Tờn sỏch Số lượng Đơn giỏ Thành tiền <% Dim i, TenSach, TongSoCuonSach, TongTien, Gia, SoLuong, ThanhTien TongTien = 0 TongSoCuonSach = Request.form("SoLuongSach") For i = 1 to TongSoCuonSach TenSach = Request.Form("TenSach" &i) SoLuong = Request.form("SL" &i) Gia = Request.form("Gia" &i) IF SoLuong > 0 Then ' /// Chỉ hiển thị và tớnh toỏn khi số lượng> 0 ThanhTien = SoLuong * Gia TongTien = TongTien + ThanhTien Response.Write("") Response.Write("" & TenSach) Response.Write("" & SoLuong) Response.Write("" & Gia) Response.Write("" & ThanhTien) End IF Next Response.Write("Tổng số tiền là : " & TongTien) %> > Trang này cú nhiệm vụ thụng kờ lại toàn bộ những cuốn sỏch và số tiền tương ứng. Sau đú chuyển tổng số tiền sang trang ThanhToan.asp. Trang ThongKe.asp 61 Thanh toỏn trực tuyến KẾT QUẢ THANH TOÁN <% IF Session("DaDangNhap") = "roi" Then Dim TongTienMua, SoDuTaiKhoan, MaKhachHang, strSQL '/// Lấy mó khỏch hàng từ biến session khi Login MaKhachHang = Session("UserName") Set Rs = Cn.Execute("Select * from tblUserDetail Where MaNguoiDung = '" & MaKhachHang & "'") '/// Lấy số tiền cũn dư trong tài khoản của khỏch hàng SoDuTaiKhoan = Rs("SoDuTaiKhoan") '/// Lấy tổng số tiền mua sỏch do trang thongke.asp gửi sang TongTienMua = Request.Form("TongTienMua") IF int(SoDuTaiKhoan) >= int(TongTienMua) Then '/// Thực hiện Thanh toỏn '/// Cộng tiền vào số dư tài khoản cho người bỏn strSQL = "UPDATE tblUserDetail Set SoDuTaiKhoan = SoDuTaiKhoan + " &TongTienMua strSQL = strSQL & " WHERE MaNguoiDung = 'Seller'" Cn.Execute strSQL '/// Trừ tiền vào số dư tài khoản của người mua hàng strSQL = "UPDATE tblUserDetail Set SoDuTaiKhoan = SoDuTaiKhoan - " &TongTienMua strSQL = strSQL & " WHERE MaNguoiDung = '" & MaKhachHang & "'" Cn.Execute strSQL '// Thụng bỏo thanh toỏn thành cụng Response.Write("Cảm ơn bạn đó mua hàng." ) Else '/// Khụng đủ tiền thanh toỏn Response.Write("Rất tiếc, Bạn khụng đủ thanh toỏn ") Response.write("Bạn hiện cú: " &SoDuTaiKhoan & "") Response.write("Số tiền bạn phải thanh toỏn là : " &TongTienMua) End IF Else Response.Write("Bạn chưa đăng nhập ! Đăng nhập ") End IF %> *** Hàm int (s) để chuyển một xõu thành số. Vớ dụ: int(“100”) ặ 100 ++ Seller là tài khoảncủa người bỏn hàng. (CHÚ í: CÁC BÀI TẬP BỔ SUNG SẼ ĐƯỢC CẬP NHẬT VÀ UPLOAD THƯỜNG XUYấN TẠI: WWW.UTEHY.VN/FORUM ) Trang ThanhToan.asp
File đính kèm:
- Bài giảng Lập trình Web bằng ASP.pdf