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