Bài giảng nhập môn ASP
1Bài 21BÀI 5NHẬP MÔN ASPKhoa CNTT - ĐHKHTNBài 22Khoa CNTT - ĐHKHTNNội dung1. Giới thiệu2. Các khái niệm căn bản3. Xử lý dữ liệu nhập từ người dùng4. Xử lý kết xuất dữ liệu5. Các vídụ6. Kết nối cơ sở dữ liệuBài 23Khoa CNTT - ĐHKHTN1. Giới thiệun ASP –Active Server Page: công nghệ phát triển ứng dụng Web (server-side)n Dễ viết, dễ sửa đổi, tích hợp với các công nghệ của Microsofft như COM,…n File cótên mở rộng .aspn Sử dụng ngôn ngữ VBScript, Jscript, Perl,…n Thực hiện tuần tự từ trên xuống (thông dịch) bởi các bộ SCRIPT ENGINEn Kết quả thực hiện là1 trang HTML 2Bài 24Khoa CNTT - ĐHKHTN2. Các khái niệm cơ bản (1)n 1 trang ASP thường có4 phầnq Dữ liệu văn bản (text)q tag HTMLq Mã client-side (<script>…</script>)q Mã chương trình ASP : <% …%><HTML><BODY><P> <B>Welcome to my website</B>. Today is<%Response.Write Date()%></BODY></HTML>Bài 25Khoa CNTT - ĐHKHTN2. Các khái niệm cơ bản (2)<HTML><BODY><%Dim dtmHourdtmHour = Hour(Now())If dtmHour < 12 ThenResponse. Write "Good Morning!"ElseResponse. Write "Hello!"End If%></BODY></HTML><HTML> <BODY><%Dim dtmHourdtmHour = Hour(Now())If dtmHour < 12 Then%>Good Morning!<%Else%>Hello!<%End If%></BODY></HTML>Bài 26Khoa CNTT - ĐHKHTN2. Các khái niệm cơ bản (3)n Qui định ngôn ngữ (ở đầu trang)<%LANGUAGE=ScriptingLanguage%><%LANGUAGE=VBScript%>n Các đối tượng xây dựng sẵn trong ASP códạng collection: q Request, Response, Session, Cookies, Server, Application,… 3Bài 27Khoa CNTT - ĐHKHTN3. Xử lý dữ liệu từ người dùng (1)n Trang nhập liệu: nhập qua đối tượng FORM, thực hiện SUBMITn Trang xử lý dữ liệu, sử dụng đối tượng Requestq Request.QueryString(“FieldName”) –method GETq Request.Form(“FieldName”) –method POSTBài 28Khoa CNTT - ĐHKHTN3. Xử lý dữ liệu từ người dùng (2)FILE : INPỦT.htm<HTML> <HEAD><TITLE>Input data</TITLE></HEAD><BODY><FORM ACTION="hello.asp" NAME="myform" METHOD="GET">First Name: <INPUT TYPE="TEXT" NAME="FirstName“SIZE=20><br>Last Name: <INPUT TYPE="TEXT" NAME="LastName“SIZE=20><br>Gender: <SELECT NAME="Gender" ><OPTION VALUE="Mr">Male</OPTION><OPTION VALUE="Ms">Female</OPTION></SELECT><INPUT TYPE="SUBMIT" NAME="b1" VALUE=”Submit”></FORM></BODY></HTML>Bài 29Khoa CNTT - ĐHKHTN3. Xử lý dữ liệu từ người dùng (3)hello.asp<HTML><HEAD><TITLE>Output data</TITLE></HEAD><BODY><%FName = Request.QueryString("FirstName")LName = Request.QueryString("LastName")Gender = Request.QueryString("Gender")%> <p>Hello<%Response. Write Gender & " " & FName & " " & LName%></BODY></HTML> 4Bài 210Khoa CNTT - ĐHKHTN4. Xử lý các kết xuất dữ liệu (1)n Sử dụng lệnh <% Response.Write …%>n Viết lệnh trên nhiều dòng <%Response.Write "Chào mừng các bạn đến với website" &_"của Trường ĐH Khoa Học Tự Nhiên"%>n Sử dụng <%= %><%Response.Write "Trường ĐH Khoa Học Tự Nhiên"%><%="Trường ĐH Khoa Học Tự Nhiên" %>Bài 211Khoa CNTT - ĐHKHTN4. Xử lý các kết xuất dữ liệu (2)n Lưu ý dấu đóng chuỗi “…”, ‘…‘n In ra dấu “q “”: “In ra ký tự “”nháy “”“⇒In ra ký tự “nháy “q CHR(34) q Dùng dấu nháy đơn “In ra ký tự ‘nháy đơn’Bài 212Khoa CNTT - ĐHKHTNVídụ<html><body><script type="text/vbscript">dim namename="Jan Egil"document.write "are you""ok"""document.write "<hr>"document.write "are you ‘ok’"document.write "<hr>"</script><% response.write ("are you"&chr(34)&"ok"&chr(34)) %></body></html> 5Bài 213Khoa CNTT - ĐHKHTN4. Xử lý các kết xuất dữ liệu (3)n In ký tự HTML < , >, & ,…q Server.HTMLEncode (str): xuất đầy đủ ký tự HTMLq Server.URLEncode (str) : xuất chuỗi theo dạng URLBài 214Khoa CNTT - ĐHKHTNVídụ<html><body><% response.write ("<h1>OK</h1>")response.write (Server.HTMLEncode("<h1>OK</h1>")&"<p>")response.write (Server.URLEncode("www.a.com/a.asp?test=test"))%></body></html>Bài 215Khoa CNTT - ĐHKHTN4. Xử lý các kết xuất dữ liệu (4)<HTML><HEAD> <TITLE>Output data</TITLE></HEAD><BODY><%Response.Write "<B>Hyperion</b> by <I>Dan Simmons</i> is a greatnovel"Response.Write "<p>"Response.Write server.htmlencode("<B>Hyperion</b> by <I>Dan Simmons</i> is a great novel")Response.Write "<p>"Response.Write "Joe Smith & Hilda = a team"Response.Write "<p>"Response.Write server.URLencode("Joe Smith & Hilda = a team")%></BODY></HTML> 6Bài 216Khoa CNTT - ĐHKHTN4. Xử lý các kết xuất dữ liệu (5)Một số vídụTạo ra trang Web cóFORM<FORM> Year <SELECT NAME= "Year" ><OPTION VALUE="1930">1930</OPTION><OPTION VALUE="1931">1931</OPTION><OPTION VALUE="1932">1932</OPTION>…<OPTION VALUE="1980">1980</OPTION></SELECT></FORM>Bài 217Khoa CNTT - ĐHKHTNViết lại bằng code ASP<html><Form>Year <Select name="Year"><%for i=1930 to 1980Response.write ("<OPTION VALUE=" & i & ">")Response.write (i & "</OPTION>")next%></Select></Form></html>VídụBài 218Khoa CNTT - ĐHKHTNCách khác dùng <%=%><html><Form>Year <Select name="Year"><%for i=1930 to 1980%><OPTION value="<%=i%>"> <%=i%> </OPTION><%next%></Select></Form></html>Vídụ 7Bài 219Khoa CNTT - ĐHKHTN4. Xử lý các kết xuất dữ liệu (6)Một số vídụnTạo bảng dữ liệu động (tĩnh vs động)A9999009999 …A2990022A1990011Ghi chúHọ tênMSSVTTBài 220Khoa CNTT - ĐHKHTNDùng code ASP (phần header)<html><head><title>STT</title></head><body><table border="1" ><tr><td width="25%"> <p align="center">STT</td><td width="25%"> <p align="center">MSSV</td><td width="25%"> <p align="center">Họ vàTên</td><td width="25%"> <p align="center">Ghi chú</td></tr>…… Bài 221Khoa CNTT - ĐHKHTNPhần datan <%n for i= 1 to 99n %>n <tr>n <td width="25%"><%=i%> </td>n <td width="25%">HC00 <%=i%></td>n <td width="25%">Nguyễn Văn A<%=i%></td>n <td width="25%">Ghi chú <%=i%></td>n </tr>n <%n nextn %>n </table>n </body>n </html>VídụPhần code HTML để hiển thịPhần dữ liệu động:-Phát sinh-Tính toán-Truy vấn từ DB 8Bài 222Khoa CNTT - ĐHKHTN5. Các vídụkhác (1)n Nhận dữ liệu checkbox n Nhận dữ liệu từ listboxBài 223Khoa CNTT - ĐHKHTN5. Các vídụkhác (2)n Nhận dữ liệu từ Radio n Nhận dữ liệu từtextbox, hiddenBài 224Khoa CNTT - ĐHKHTNMột số vấn đền Include file q <!--#include file=“path/filename -->n Ngăn cản cache trang web<%Response.ExpiresAbsolute = #2000-01-01# ‘dùng ngày nhỏ hơn hiện hànhResponse.AddHeader "pragma", "no-cache"Response.AddHeader "cache-control", "private, no-cache, mustrevalidate"%> 9Bài 225Khoa CNTT - ĐHKHTNVídụ:<html> <body> <h3>Words of Wisdom:</h3><p><!--#include file="wisdom.inc"--></p> <h3>Bay Gio la:</h3><p><!--#include file="time.inc"--></p></body> </html>Bài 226Khoa CNTT - ĐHKHTNVídụ(tt)Wisdom.inc----------------------------“Xin chao”VídụTime.inc----------------------------<%Response.Write(Time)%>Bài 227Khoa CNTT - ĐHKHTNMột số vấn đề (3)n Đặt bảng mã xử lý UNICODE<%@CODEPAGE=65001%><%Session.Codepage=65001%><HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=UTF-8"></HEAD><BODY><% các lệnh xử lý %></BODY></HTML> 10Bài 228Khoa CNTT - ĐHKHTN6. Kết nối CSDL (1)n Sử dụng công nghệ ADOn Các đối tượng trong ADOq Connectionq RecordSetq Commandq ParameterBài 229Khoa CNTT - ĐHKHTN6. Kết nối CSDL (2)n Các bước xử lý dữ liệu trong ASPq Kết nối với dữ liệu thông qua OLE DB hoặc ODBCq Xây dựng câu truy vấn dữ liệu q Yêu cầu thực hiện câu truy vấn thực hiện các thao tác xử lítrên CSDL (thêm, xóa, sửa, lọc dữliệu, …)q Xử líkết quả trả về từ câu truy vấn trong trường hợp câu truy vấn lọc dữ liệu (SELECT queries)q Ngắt kết nối với cơ sở dữ liệu, giải phóng các tài nguyên của hệ thống đã dùng.Bài 230Khoa CNTT - ĐHKHTN6. Kết nối CSDL (3)n Tạo kết nối CSDL (Access, SQL Server,…)q Tạo connection string (tương tự như trên VB)q Kết nối CSDL, tạo đối tượng ConnectionServer.CreateObject(“ADODB.Connection”)<%strDSN = “Driver={Microsoft Access Driver (*.mdb)};DBQ=”&_server.mappath(“Test.mdb”)'Create a connection object.Set Conn = Server.CreateObject("ADODB.Connection")'Open a connection using the ODBC connection string.Conn.Open strDSN%> [...]... Update n Delete 14 Bài 2 40 Khoa CNTT - ĐHKHTN Bài tập thực hành n Viết các trang ASP nhận dữ liệu từ q textbox, listbox, radio, checkbox,… n Viết trang ASP kiểm tra đăng nhập q UserName, Pwd n Xây dựng các trang thao tác CSDL dbbooks.mdb q Liệt kê DS các sách trong CSDL q Thêm 1 quyển sách mới q Thực hiện kiểm tra đăng nhập trước khi thêm 1 Bài 2 1 BÀI 5 NHẬP MÔN ASP Khoa CNTT - ĐHKHTN Bài 2 2 Khoa CNTT... Giới thiệu 2. Các khái niệm căn bản 3. Xử lý dữ liệu nhập từ người dùng 4. Xử lý kết xuất dữ liệu 5. Các vídụ 6. Kết nối cơ sở dữ liệu Bài 2 3 Khoa CNTT - ĐHKHTN 1. Giới thiệu n ASP –Active Server Page: công nghệ phát triển ứng dụng Web (server-side) n Dễ viết, dễ sửa đổi, tích hợp với các cơng nghệ của Microsofft như COM,… n File cótên mở rộng .asp n Sử dụng ngôn ngữ VBScript, Jscript, Perl,… n Thực... you"&chr(34)&"ok"&chr(34)) %> </body> </html> 13 Bài 2 37 Khoa CNTT - ĐHKHTN Một số vídụ: Trình bày dữ liệu ra trang Web n Xuất records từ CSDL ra trang HTML n Xuất records dưới dạng bảng n Thêm tên cột vào bảng n Thêm màu vào bảng Bài 2 38 Khoa CNTT - ĐHKHTN SQL n Xuất dữ liệu thoả điều kiện n Sắp xếp records theo tên trường n Cho phép người dùng chon cột để sắp xếp Bài 2 39 Khoa CNTT - ĐHKHTN Recordset n... 4 Bài 2 10 Khoa CNTT - ĐHKHTN 4. Xử lý các kết xuất dữ liệu (1) n Sử dụng lệnh <% Response.Write …%> n Viết lệnh trên nhiều dòng <% Response.Write "Chào mừng các bạn đến với website" &_ "của Trường ĐH Khoa Học Tự Nhiên" %> n Sử dụng <%= %> <% Response.Write "Trường ĐH Khoa Học Tự Nhiên" %> <%="Trường ĐH Khoa Học Tự Nhiên" %> Bài. .. 'Smith'" n Thực thi câu truy vấn q Conn.Execute strSQL Bài 2 32 Khoa CNTT - ĐHKHTN 6. Kết nối CSDL (5) n Xử lý kết quả trả về (SELECT) q Sử dụng đối tượng RecordSet n Nhận dữ liệu trả về q Set rs = Conn.Execute (strSQL). q Tạo đối tượng RecordSet vàdùng phương thức Open Set rs = Server.CreateObject(“ADODB.Recordset”) strSQL = “…” rs.Open strSQL, Conn Bài 2 33 Khoa CNTT - ĐHKHTN 6. Kết nối CSDL (6) n Nhận... CNTT - ĐHKHTN 4. Xử lý các kết xuất dữ liệu (2) n Lưu ý dấu đóng chuỗi “…”, ‘…‘ n In ra dấu “ q “”: “In ra ký tự “”nháy “”“ ⇒In ra ký tự “nháy “ q CHR(34) q Dùng dấu nháy đơn “In ra ký tự ‘nháy đơn’ Bài 2 12 Khoa CNTT - ĐHKHTN Vídụ <html> <body> <script type="text/vbscript"> dim name name="Jan Egil" document.write "are you""ok""" document.write...11 Bài 2 31 Khoa CNTT - ĐHKHTN 6. Kết nối CSDL (4) n Xây dựng câu truy vấn q strSQL = "INSERT INTO Customers (FirstName, LastName) VALUES ('Jose','Lugo')“ q strSQL = "UPDATE . 1Bài 21BÀI 5NHẬP MÔN ASPKhoa CNTT - ĐHKHTNBài 22Khoa CNTT - ĐHKHTNNội dung1. Giới thiệu2. Các khái niệm căn bản3. Xử lý dữ liệu nhập từ người. Delete 1 4Bài 240Khoa CNTT - ĐHKHTNBài tập thực hànhn Viết các trang ASP nhận dữ liệu từq textbox, listbox, radio, checkbox,…n Viết trang ASP kiểm tra đăng nhậpq