Bài 1: Cách cài đặt trình chủ IIS Và khái niệm cơ bản

1. Cách cài trình chủ IIS: Áp dụng cho các loại window2000 trở lên - Vào Control panel / Chọn Add Remove Program - Chọn Add / Remove Window components - Chọn Internet infomation Service - Cuối cùng chọn Next Tất cả các trang web được gọi là ASP thi lưu với phần đuôi mở rộng là :.ASP 2. Giao thức chạy ASP: http://localhost/tên_file.asp 3. Cấu trúc của ASP: <% 'Khối lệnh %> 4. Cách khai báo biến: Dim tên_biến VD : Dim a,b 5. Các hàm toán học cơ bản trong ASP: -sin(x) :Hàm sin của x -cos(x) :Hàm cos của x -tan(x) :Hàm tang của x -sqr(x) :Hàm căn bậc 2 của x 4. Các hàm trong ASP: - Date():'Chèn ngày tháng năm hiện tại - Time():'Chèn giờ phút giây hiện tại - Weakday():'Chèn thứ trong tuần VD: Hôm nay là ngày : <%=Date()%> 6. Cách in biến lên trang web trong ASP: <%=biến%> 7. Các hàm xử lý xâu trong ASP: - Hàm Left: Lấy ký tự bên trái <% Dim s,v s="viet" v=left(s,2) %> Ký tự cần lấy là: <%=v%> ==> KQ: vi - Hàm Right tương tự nhưng lấy ký tự bên phải - Hàm mid: Lấy ký tự ở giữa <% Dim s,v s="viet" v=mid(s,3,1) %> Ký tự cần lấy là: <%=v%> ==> KQ: e trong đó : 3 : là vị trí, 1 : là ký tự cần lấy

Bài 2: Cấu trúc điều khiển

1. Cấu trúc điều kiện: cú pháp: if đk then 'câu lệnh 1 else if đk then 'câu lệnh 2 else Câu lệnh End if End if VD: cho sau 2. Cấu trúc lặp For: for bt1 to bt 2 câu lệnh Next trong đó: +bt1: khởi gán giá trị ban đầu cho biến điều khiển +bt2: là biểu thức so sánh VD1 : in ra dãy số từ 1 đến 10 <% Dim i for i=1 to 10 %> <%=i Next %> VD2 : in ra dòng chữ I Love you tăng dần từ 1 đến 7 <% Dim i for i=1 to 7 %> <font size=<%=i%> I love you <%Next%> 3. Lệnh rẽ nhánh select case: cú pháp: select case biểu_thức case giá trị 1 câu lệnh 1 case giá trị 2 câu lệnh 2 case else Câu lệnh còn lại End select VD: Viết chương trình hiển thị thứ trong tuần <% Dim a a=weekday(Date()) select case a case 1 %> Chủ nhật <%case 2%> Thứ hai <%case 3%> Thứ ba <%case 4%> Thứ tư <%case 5%> Thứ năm <%case 6%> Thứ sáu <%case 7%> Thứ bảy Endselect

Bài 3: Đối tượng Application, Request, Response

1)Đối tượng Application: Tạo ra các biến toàn cục cho các trang web nằm trong Server Nó có tác dụng đối với tất cả các trang web mà nằm trong một thư mục của Server. - Cách khai bái biến : Application("tên_biến")=giá trị VD: <% Application("a")=10 %> - Application.contents.key(giá trị biến) : Lấy ra tên biến VD: <% b=Application.contents.key(10) c=Application(b) Response.write("Tên biến là:"&b) Response.write("Giá trị biến là:"&c) %> - Application.contents.count() : Trả về tổng số phần tử trong tập hợp Application VD: <% pt=Application.contents.count() Response.write("Tổng số ptử là:"&pt %> VD: Đếm số người sử dụng trang web B1: tậo trang a.asp <% Application("d")=0 %> B2: tậo trang b.asp <% Application("d")=Application("d")+1 Response.write("Co :"&Application("d")) %> 2)Đối tượng Request: Request.Form("tên_form") Dùng để lấy thông tin từ các Form có method là:Post Request.QueryString("tên_form") Dùng để lấy thông tin từ các Form có method là:Get VD: Viết chương trình tính tổng của hai số a,b <form action="tong.asp" method="post"> a <input type="text" name=a> b <input type="text" name=b> <input type="submit" value="Caculator"> </form> <% Dim a1,b1,t a1=Request.form("a") b1=Request.form("b") t=cint(a+b) %> Tổng của <%=a1%> và <%=b1%> là:<%=t%> 2)Đối tượng Response: a) Response.Write("xâu"&biến): Dùng để lấy kết quả từ Server chuyển về máy client b) Response.Clear(): Xóa sạch bộ đệm, Xóa toàn bộ nội dung của trang web c) Response.end(): Bất cứ nội dung hay câu lệnh nào trong html sẽ không được hiển thị d) Response.IsClientConnected(): Kiển tra xem Client còn kết nối với Server nữa không + Nếu là True còn kết nối + Nếu là False không còn kết nối <% if Response.IsClientConnected= true then Response.write("Nguoi dung con ket noi") else Response.write("Nguoi dung khong con ket noi") End if %> e) Response.Redirect("url"): Dùng để chuyển người dùng sang một trang web khác VD: Tạo quá trình đăng nhập B1: Tạo trang login.asp: <form action="test.asp" method="post"> Name: <input type="text" name=a> Pass : <input type="text" name=b> <input type="submit" value="Login"> </form> B2: Tạo trang test.asp: <% Dim a1,b1 a1=Request.form("a") b1=Request.form("b") if a1="" and b1="" then Response.write("Bạn phải nhập dữ liệ") else if a1="viet" and b1="viet" then Response.Redirect("thanhcong.asp") else Response.Redirect("login.asp") %> B3:Tạo trang thanhcong.asp: Bạn đăng nhập thành công

Bài 4: Đối tượng Session

1. Công dụng: Dùng để lưu trữ thông tin về những thay đổi đối với 1 người dùng Các biến chứa trong đối tượng Session chứa thông tin về 1 người dùng và được dùng chung cho tất cả các trang trong một ứng dụng Khi có một người dùng mới Server tạo ra một đối tượng Session mới sẽ hủy bỏ Session đó khi nsd không kết nối nữa. 2. Cách khai bái biến : Session("tên_biến")=giá trị VD: <% Session("a")=10 %> 3. Session.abandon: Dùng để kết thúc Session của nsd 3. Chỉ thị #include: Dùng để chèn nội dung của trang web này vào trang web khác Cú pháp: <!--#include file="file.asp"--> VD1: B1: time.asp <% Response.write(Time()) %> B2:Tạo trang hien.asp Bây giờ là: <!--#include file="time.asp"--> giờ VD2 : Viết trang web sau <% id=Request.QueryString("d") %> <table border=1 cellspacing=0> <tr> <td> <a href="?d=1">Trang chủ</a><br> <a href="?d=2">Thời tiết</a> </td> <td> <%select case id case 1 %> <!--#include file="trangchu.asp"--> <%case 2%> <!--#include file="thoitiet.asp"--> <%case else%> <!--#include file="default.asp"--> <%End select%> </td> </tr> </table>

Bài 5: Đối tượng Server

1. Định nghĩa: Server cung cấp nhiều thuộc tính và phương thức dùng để truy cập Server. Quản lý các đặc trưng của trình chủ IIS và các hành động liên quan đến http 1. Các phương thức của Server: a) Server.CreateObject("kiểu"): Dùng để tạo ra 1 thực thể của một đối tượng VD: set conn=Server.CreateObject("AĐOB.connection") b)Server.Execute(sql) Thực thi một trang ASP bđn trong một trang khác sau khi thực thi xong thì quyền điều khiển lại được trả về cho trang ASP ban đầu . c)Server.MapPath("path") Dùng để ánh xạ một đường dẫn nào đó sang đường dẫn vật lý. d)Server.Transfer Dùng để liên kết sang một file. Nhưng không trả lịa quyền cho trang ban đâu

Bài 6: Kết nối CSDL bằng ADO

1. Giới thiệu: ADO (Activex Data Object) Là một kỹ thuật mới do Microsoft phát triển để làm việc với CSDL được dùng để cung cấp khả năng kết nối và xử lý trên CSDL. 2. Câu truy vấn thường dùng trong ASP: a)Truy vấn lựa chọn: sql="select *from tên_bảng" b)Truy vấn săp xếp tăng dần: sql="select *from tên_bảng order by tên_trường" Chú ý : Giảm dần chỉ cần thêm từ khóa Desc b)Truy vấn chèn: sql="Insert into tên_bảng(Tên_trường) values("&biến_dạng_số&",'"&biến_dạng_xâu&"',#"&biến_dạng_Date&"#)" c)Truy vấn xóa: sql="Delete from tên_bảng where tên_trường='"&biến&"';" d)Truy vấn Cập nhật: sql="Update tên_bảng set tên_trường='"&biến&"' where tên_trương="&biến&";" 3.Bài tập kết nối CSDL Bài 1: Cho bảng dữ liệu là "sinhvien.mdb" và bảng là "sv"gồm: stt :kiểu số họ_tên : Kiểu Text nơi_sinh: Kiểu xâu Yêu cầu: a) Sử dụng ADO để lấy CSDL trên sang trang ASP b) Sắp xếp CSDL theo chiều giảm dần c) Tìm kiếm CSDL theo trưồng "hoten" Giải: B1:Tạo trang demo.asp <% set conn=server.CreateObject("ADODB.connection") set rs=server.CreateObject("ADODB.Recordset") conn.ConnectionString="Provider=Microsoft.jet.OLEDB.4.0; data source="&Server.MapPath("acess\sinhvien.mdb") conn.open sql="select *from sv order by desc" rs.open sql,conn %> <table border=1 cellspacing=0 bordercolor=silver width=340> <TR bgcolor=silver> <td align=center>STT</td> <td align=center>Họ Tên</td> <td align=center>Nơi sinh</td> </tr> <%while not rs.EOF%> <tr> <td><%=rs(0)%> </td> <td><%=rs(1)%> </td> <td><%=rs(2)%></td> </tr> <% rs.Movenext wend %> </table> B2: tạo trang nhapten.asp: <form action="timten.asp" method="post"> Tên : <input type="text" name=a> </form> B3: Tạo trang timten.asp <% Dim t set conn=server.CreateObject("ADODB.connection") set rs=server.CreateObject("ADODB.Recordset") conn.ConnectionString="Provider=Microsoft.jet.OLEDB.4.0; data source="&Server.MapPath("acess\sinhvien.mdb") conn.open t=Request("a") sql="select *from sv order by desc where ten='"&t&"';" rs.open sql,conn %>

Bài 7: Chèn (Insert), Xóa (Delete) CSDL

Bài 1: Cho bảng dữ liệu là "sinhvien.mdb" và bảng là "sv"gồm: stt :kiểu số họ_tên : Kiểu Text nơi_sinh: Kiểu xâu Yêu cầu: a) Sử dụng ADO để lấy CSDL trên sang trang ASP b) Chén CSDL c) Xóa CSDL theo trưồng "hoten" Giải: B1:Tạo trang demo.asp <% set conn=server.CreateObject("ADODB.connection") set rs=server.CreateObject("ADODB.Recordset") conn.ConnectionString="Provider=Microsoft.jet.OLEDB.4.0; data source="&Server.MapPath("acess\sinhvien.mdb") conn.open sql="select *from sv order by desc" rs.open sql,conn %> <table border=1 cellspacing=0 bordercolor=silver width=340> <TR bgcolor=silver> <td align=center>STT</td> <td align=center>Họ Tên</td> <td align=center>Nơi sinh</td> </tr> <%while not rs.EOF%> <tr> <td><%=rs(0)%> </td> <td><%=rs(1)%> </td> <td><%=rs(2)%></td> </tr> <% rs.Movenext wend %> </table> B2: tạo trang nhapchen.asp: <form action="chen.asp" method="post"> Tên : <input type="text" name=a> Nơi sinh : <input type="text" name=b> </form> B3: Tạo trang chen.asp <% Dim t,n set conn=server.CreateObject("ADODB.connection") set rs=server.CreateObject("ADODB.Recordset") conn.ConnectionString="Provider=Microsoft.jet.OLEDB.4.0; data source="&Server.MapPath("acess\sinhvien.mdb") conn.open t=Request("a") n=Request("b") sql="Insert into sv(hoten,noisinh) values('"&t&"','"&n&"');" conn.execute(sql) %> B4: tạo trang nhapxoa.asp: <form action="xoa.asp" method="post"> Tên : <input type="text" name=a> </form> B3: Tạo trang chen.asp <% Dim t set conn=server.CreateObject("ADODB.connection") set rs=server.CreateObject("ADODB.Recordset") conn.ConnectionString="Provider=Microsoft.jet.OLEDB.4.0; data source="&Server.MapPath("acess\sinhvien.mdb") conn.open t=Request("a") sql="Delete *from sv where hoten='"&t&"';" conn.execute(sql) %>

Bài 8: Cập nhật CSDL và quyền truy cập

Bài 1: Cho bảng dữ liệu là "sinhvien.mdb" và bảng1 là "sv"gồm: stt :kiểu số họ_tên : Kiểu Text nơi_sinh: Kiểu xâu Bảng2 là "sudung" gồm 2 trưồng: username :Text Password : Text Yêu cầu: a) Sử dụng ADO để lấy CSDL trên sang trang ASP b) Tạo quyền đănh nhập khi có User và Pass c) Cập nhật CSDL cho bảng sv Giải: B1:Tạo trang demo.asp <% set conn=server.CreateObject("ADODB.connection") set rs=server.CreateObject("ADODB.Recordset") conn.ConnectionString="Provider=Microsoft.jet.OLEDB.4.0; data source="&Server.MapPath("acess\sinhvien.mdb") conn.open sql="select *from sv order by desc" rs.open sql,conn %> <table border=1 cellspacing=0 bordercolor=silver width=340> <TR bgcolor=silver> <td align=center>STT</td> <td align=center>Họ Tên</td> <td align=center>Nơi sinh</td> </tr> <%while not rs.EOF%> <tr> <td><%=rs(0)%> </td> <td><%=rs(1)%> </td> <td><%=rs(2)%></td> </tr> <% rs.Movenext wend %> </table> B2: tạo trang nhaplogin.asp: <form action="kiemtra.asp" method="post"> User : <input type="text" name=a> Pass: <input type="text" name=b> </form> B3 :Tạo trang kiemtra.asp: <% Dim anh1,td1 anh1=request("a") td1=request("b") set conn=server.CreateObject("ADODB.connection") set rs=server.CreateObject("ADODB.recordset") conn.connectionString="provider=microsoft.jet.oledb.4.0; data source="&Server.MapPath("acess\sinhvien.mdb") conn.open sql="select *from sudung where user='"&anh1&"' and password='"&td1&"';" rs.open sql,conn if not rs.eof then %> <script> alert("Bạn đã đănh nhập thành công!"); </script> <center> Chuc Mung Ban da dang nhap thanh cong! De tiep tuc truy cap trang web ban hay<br> <a href="demo.asp">Click here!</a> </center> <% else %> <script> alert("Bạn phải đăng nhập lại"); </script> </head> <a href="demo.asp">Click here</a> <% End if %> B4: tạo trang nhapcapnhat.asp: <form action="capnhat.asp" method="post"> User : <input type="text" name=a> Pass: <input type="text" name=b> stt: <input type="text" name=c> </form> B5 :Tạo trang capnhat.asp: <% Dim anh1,td1 anh1=request("a") td1=request("b") s=request("c") set conn=server.CreateObject("ADODB.connection") set rs=server.CreateObject("ADODB.recordset") conn.connectionString="provider=microsoft.jet.oledb.4.0; data source="&Server.MapPath("acess\sinhvien.mdb") conn.open sql="Update sv set hoten='"&anh1&"',noisinh='"&td1&"' where stt="&s&";" conn.execute(sql) %>

Bài 9: Một số ứng dụng trong ASP

Hiển thị nội dung bằng select :
<% set conn=server.CreateObject("ADODB.connection") set rs=server.CreateObject("ADODB.Recordset") conn.ConnectionString="Provider=Microsoft.jet.OLEDB.4.0;data source="&Server.MapPath("thu.mdb") conn.open sql="select *from b" rs.open sql,conn %> <form method="post" action="chen1.asp"> <select name="s"> <%while not rs.EOF Response.write "<option value='"&rs("a")&"'>" Response.write rs("a")& "</option>" Response.write "<option value='"&rs("a1")&"'>" Response.write rs("a1")& "</option>" %> </select> <select name="s1"> <% Response.write "<option value='"&rs("a1")&"'>" Response.write rs("a1")& "</option>" %> </select> <% rs.Movenext wend %> <input type="submit"> </form> <br> chèn CSDL bằng select:
<% Dim h,d h=request("s") d=request("s1") set conn=server.CreateObject("ADODB.connection") set rs=server.CreateObject("ADODB.Recordset") conn.ConnectionString="Provider=Microsoft.jet.OLEDB.4.0;data source="&Server.MapPath("thu.mdb") conn.open sql="select *from b" rs.open sql,conn sql="insert into b(a,a1) values('"&h&"','"&d&"')" conn.execute(sql) %> <table border=1> <tr> <td>ban phim</td> <td>Chuot</td> </tr> <%while not rs.EOF%> <tr> <td><%=rs(0)%></td> <td><%=rs(1)%></td> </tr> <% rs.Movenext wend %> </table>