Cơ bản về HTML, Javascript, CSS và ASP
1 Phần A
1.1 Tạo các phần tử HTML cơ bản. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Bài tập cơ bản về JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Sử dụng các lớp xử lý Chuỗi, Ngày tháng, Toán học. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4 Xử lý sự kiện trong trang HTML với JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.5 Định dạng các phần tử HTML bằng CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.6 Tạo và xử lý các tầng (Layer) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
1.7 Nội dung động và định vị động . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2 Phần B
2.1 ASP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.2 Cấu trúc của một file ASP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
2.3 Các đối tượng Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
2.4 Kết nối và thao tác với CSDL trong ASP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
Attributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .79
website.
2.3.5.2 Đối tượng Application
Dùng để quản lý (Tạo, đọc, ghi) các biến có phạm vi toàn ứng dụng.
+ Cú pháp tạo biến Application:
Application(“Tên_Biến”) =
+ Ví dụ: Tạo biến So_Nguoi_Truy_Cap
Application(“So_Nguoi_Truy_Cap”) = 0
+ Ví dụ : Đọc và ghi biến Application
Application(“So_Nguoi_Truy_Cap”)= Application(“So_Nguoi_Truy_Cap”) + 1
Response.write(“Bạn là vị khách thứ: “ & Application(“So_Nguoi_Truy_Cap”))
Lưu ý: Khi biến đã tồn tại thì lệnh trên được hiểu là gán giá trị mới, còn nếu chưa tồn tại thì được hiểu
là tạo biến.
Đối tượng Application cũng có 2 sự kiện đó là Application_OnStart và Application_OnEND. Sự kiện
OnStart chỉ được kích hoạt duy nhất một lần khi yêu cầu đầu tiên phát sinh. Sự kiện OnEND được kích
hoạt khi dịch vụ web dừng (unload).
Đối tượng Application có 2 phương thức là Lock và Unlock. Khi gọi phương thức Lock (khóa) thì tất cả
các ứng dụng không được phép thay đổi các giá trị Application. Để các ứng dụng khác được phép thay đổi
các biến Application thì gọi phương thức Unlock.
Mã lệnh viết cho 2 sự kiện này cũng được đặt trong file Global.asa.
2.3.5.3 Ví dụ tổng hợp
Mỗi khi người dùng truy cập vào website thì hiển thị cho người đó biết là vị khách thứ bao nhiêu – chẳng
hạn hiển thị trong trang Home.asp.
Trang Global.asa
’/// Thu tuc nay duoc goi duy nhat mot lan
SUB Application_OnStart
Application("SoKhachTruyCap") = 0
END SUB
’/// Thu tuc nay duoc goi khi IIS stop
SUB Application_OnEND
Application("SoKhachTruyCap") = 0
END SUB
74 CHƯƠNG 2. PHẦN B
’/// Thu tuc nay duoc goi khi bat dau mot phien
SUB Session_OnStart
’........
Application("SoKhachTruyCap") = Application("SoKhachTruyCap") + 1
’.........
END SUB
Trang Home.asp
HTML>
Trang chu
<%
Response.write("Day la trang chu cua lop TK34 !")
Response.write("Chao mung ban da ghe tham website cua chung toi !")
Response.write("")
Response.write("Ban la vi khach thu : " &application("SoKhachTruyCap"))
%>
2.3.6 Chèn file vào trang asp
Rất nhiều trang có những phần thông tin giống hệt nhau (Ví dụ phần Đầu trang, chân trang hay phần kết
nối đến CSDL) [U+F0E8] Để nhanh chóng, dễ dàng sửa đổi, bảo trì, ASP cho phép người dùng chèn một
trang vào trang web hiện tại.
2.3.6.1 Cú pháp chèn file:
+ Loại_Đường_Dẫn có thể là File hoặc Virtual.
Nếu Loại_Đường_Dẫn = File thì Tên_File là đường dẫn tương đối tính từ thư mục hiện hành.
Nếu Loại_Đường_Dẫn = Virtual thì Tên_File sẽ là đường dẫn ảo đầy đủ.
Ví dụ 1:
Ví dụ 2 :
2.3.6.2 Ví dụ tổng hợp
Tạo một trang web chứa footer cung cấp thông tin liên hệ. Footer này xuất hiện trong tất cả các trang,
trong đó có trang Home.asp.
Các bước tiến hành: Tạo một trang chứa nội dung footer, đặt tên là Footer.asp
Sau đó Include vào các trang – ví dụ trang Home.asp
Trang Footer.asp
© by TK34 - UTEHY 2006. Telephone: 0321-123456/ Fax: 0321-713015; E-Mail:
TK34@googlegroups.com
Lưu ý:
75
- Thường thì các trang được Include như thế này có đuôi mở rộng là *.inc
- Nội dung các trang Include có thể chứa cả thẻ HTML và cả mã lệnh asp
Trang Home.asp (Có Include trang Footer.asp)
Trang chu
<%
Response.write("Day la trang chu cua lop TK34 !")
Response.write("Chao mung ban da ghe tham website cua chung toi !")
Response.write("")
Response.write("Ban la vi khach thu : " &application("SoKhachTruyCap"))
%>
Figure 2.8
Kết quả khi hiển thị trang home.asp
2.4 Kết nối và thao tác với CSDL trong ASP6
2.4.1 Qui tắc chung
- Tạo đối tượng Connection và Recordset sử dụng phương thức Server.CreateObject
6This content is available online at .
76 CHƯƠNG 2. PHẦN B
- Kết nối đến CSDL
- Thực thi các câu lệnh SQL thông qua phương thức Execute của đ/tượng Connection
- Đọc dữ liệu từ Recordset sử dụng vòng lặp
- Kết hợp với đối tượng Response để gửi trả kết quả về cho trình duyệt.
2.4.2 Tạo đối tượng Connection và kết nối đến CSDL
Qui ước: Tệp cơ sở dữ liệu dùng trong suốt các ví dụ là tệp nwind.mdb và được đặt tại thư mục gốc của ứng
dụng.
Trang KetNoi.asp
Ket noi
<%
Dim Conn
’// Tạo đối tượng Connection
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.ConnectionString = "Provider=Microsoft.Jet.oledb.4.0; Data Source = " &
Server.Mappath("nwind.mdb")
Conn.CursorLocation = 3
on error resume next
’/// Mở kết nối
Conn.Open
IF Conn.State = 1 THEN
Response.write("Da ket noi thanh cong !")
ELSE
Response.write("Khong the ket noi den CSDL !")
END IF
’/// Đóng kết nối
cn.Close
%>
Đối tượng Connection này giống như đối tượng Connection trong Visual Basic.
Để thực hiện các câu lệnh SQL, sử dụng cú pháp:
Cn.Execute (); với Cn là một đối tượng Connection
2.4.3 Tạo đối tượng Recordset
Dim Rs
Set Rs = Server.createObject(“ADODB.Recordset”)
Đối tượng Recordset này giống như đối tượng Recordset trong Visual Basic.
Việc phối hợp giữa đối tượng Connection và Recordset cũng giống như trong VB.
Thực thi câu lệnh SQL:
.Execute ("Câu_Lệnh_SQL")
+ Câu lệnh SQL : Select để đọc (Chọn) ra các bản ghi
+ Câu lệnh : Insert để chèn thêm các bản ghi
+ Câu lệnh: Delete để xóa bản ghi
+ Câu lệnh Update để cập nhật các bản ghi.
77
2.4.4 Một số ví dụ
Hiển thị toàn bộ tên nhà cung cấp (CompanyName) trong bảng Suppliers
Danh sach nha cung cap
<%
Dim Conn, Rs
’// Tạo đối tượng Connection
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.ConnectionString = "Provider=Microsoft.Jet.oledb.4.0; Data Source = " &
Server.Mappath("nwind.mdb")
Conn.CursorLocation = 3
’//// Mở kết nối đến CSDL
on error resume next
Conn.Open
’/// Tạo một biến Recordset
Set Rs = Server.CreateObject("ADODB.Recordset")
’/// Lưu kết quả select vào biến Recordset : RS
Set Rs = Conn.Execute("SELECT CompanyName from Suppliers")
’/// Duyệt các bản ghi trong biến kết quả RS và write ra trình duyệt
Do while not Rs.eof
Response.write(Rs("CompanyName"))
Response.write ("")
Rs.MoveNext
loop
Conn.Close
%>
Version 2:
Kết nối và đọc dữ liệu sử dụng phương thức Open của đối tượng Recordset.
Đọc dữ liệu thông qua phương thức Open
Danh sach nha cung cap
<%
Dim Conn, Rs
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.ConnectionString = "Provider=Microsoft.Jet.oledb.4.0; Data Source = " &
Server.Mappath("nwind.mdb")
Conn.CursorLocation = 3
on error resume next
Conn.Open
Set Rs = Server.CreateObject("ADODB.Recordset")
Rs.Open "SELECT CompanyName from Suppliers", Conn, 1,3
78 CHƯƠNG 2. PHẦN B
Do while not Rs.eof
Response.write(Rs("CompanyName"))
Response.write ("")
Rs.MoveNext
Loop
Conn.Close
%>
Dùng cách này, về sau ta có thể thêm và cập nhật CSDL thông qua Rs.
Hiển thị danh sách các sản phẩm trong một bảng
Thông tin hiển thị gồm: Tên sản phẩm, giá, . . .
Thêm bản ghi vào trong CSDL
Xây dựng trang asp cho phép người dùng thêm các nhà cung cấp vào
Hiển thị danh sách các nhà cung cấp trong một ComboBox
Hiển thị Tên các nhà cung cấp (Companyname), và bên cạnh tên nhà cung cấp có thêm cột “Xem các
sản phẩm” do nhà cung cấp đó sản xuất ra. Khi người dùng click vào Hyperlink này thì hiển thị tên các sản
phẩm do nhà cung cấp đó đã sản xuất ra.
Tạo một form nhập để cho phép người dùng nhập thêm nhà cung cấp.
Tạo một form để tìm kiếm thông tin chi tiết nhà cung cấp. Thông tin nhập vào là mã nhà cung cấp
(SupplierID)
Tạo một trang cập nhật thông tin về nhà cung cấp (bảng Suppliers)
Tạo một trang cho phép xóa bản ghi trong bảng Suppliers
Tạo một trang hiển thị thêm 3 cột “Add”, “Update”, “Delete” để cho người dùng có thể thêm, sửa đổi và
xóa bản ghi trong bảng Suppliers.
Tạo một bảng Users, chứa tài khoản người dùng. Sau đó xây dựng trang Login.asp thực hiện việc đăng
nhập.
Tạo một trang hiển thị danh mục các loại sản phẩm, mỗi khi người dùng click vào một chủng loại thì
hiển thị các sản phẩm thuộc chủng loại đó.
Hiển thị danh sách sản phẩm theo từng trang – 10 bản ghi / 1 trang.
THE END.
Tham gia đóng góp 79
Tham gia đóng góp
Tài liệu: Cơ bản về HTML, JAVASCRIPT, CSS và ASP
Biên soạn bởi: Khoa CNTT ĐHSP KT Hưng Yên
URL:
Giấy phép:
Module: "Tạo các phần tử HTML cơ bản."
Tác giả: Khoa CNTT ĐHSP KT Hưng Yên
URL:
Trang: 1-5
Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên
Giấy phép:
Module: "Bài tập cơ bản về JavaScript"
Tác giả: Khoa CNTT ĐHSP KT Hưng Yên
URL:
Trang: 5-7
Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên
Giấy phép:
Module: "Sử dụng các lớp xử lý Chuỗi, Ngày tháng, Toán học."
Tác giả: Khoa CNTT ĐHSP KT Hưng Yên
URL:
Trang: 7-16
Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên
Giấy phép:
Module: "Xử lý sự kiện trong trang HTML với JavaScript"
Tác giả: Khoa CNTT ĐHSP KT Hưng Yên
URL:
Trang: 16-29
Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên
Giấy phép:
Module: "Định dạng các phần tử HTML bằng CSS"
Tác giả: Khoa CNTT ĐHSP KT Hưng Yên
URL:
Trang: 29-42
Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên
Giấy phép:
Module: "Tạo và xử lý các tầng (Layer)"
Tác giả: Khoa CNTT ĐHSP KT Hưng Yên
URL:
Trang: 42-49
Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên
Giấy phép:
80 Tham gia đóng góp
Module: "Nội dung động và định vị động"
Tác giả: Khoa CNTT ĐHSP KT Hưng Yên
URL:
Trang: 49-54
Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên
Giấy phép:
Module: "ASP"
Tác giả: Khoa CNTT ĐHSP KT Hưng Yên
URL:
Trang: 55-58
Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên
Giấy phép:
Module: "Cấu trúc của một file ASP"
Tác giả: Khoa CNTT ĐHSP KT Hưng Yên
URL:
Trang: 58-59
Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên
Giấy phép:
Module: "Các đối tượng Server"
Tác giả: Khoa CNTT ĐHSP KT Hưng Yên
URL:
Trang: 59-75
Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên
Giấy phép:
Module: "Kết nối và thao tác với CSDL trong ASP"
Tác giả: Khoa CNTT ĐHSP KT Hưng Yên
URL:
Trang: 75-78
Bản quyền: Khoa CNTT ĐHSP KT Hưng Yên
Giấy phép:
Hoc lieu Mo Vietnam - Vietnam Open Educational Resources
Học liệu mở Việt Nam là hỗ trợ việc quản lý, tạo, lưu trữ tài liệu giáo dục hiệu quả.File đính kèm:
Cơ bản về HTML, Javascript, CSS và ASP.pdf

