phÁt triỂn Ứng dỤng web · bộ môn mạng và truyền thông máy tính ... khi có yêu...

27
Lê Đình Thanh Bộ môn Mạng và Truyền thông Máy tính Khoa Công nghệ Thông tin Trường Đại học Công nghệ, ĐHQGHN E-mail: [email protected], [email protected] Mobile: 0987.257.504 Bài giảng PHÁT TRIỂN ỨNG DỤNG WEB

Upload: hakhue

Post on 09-Apr-2018

215 views

Category:

Documents


2 download

TRANSCRIPT

Lê Đình ThanhBộ môn Mạng và Truyền thông Máy tính

Khoa Công nghệ Thông tinTrường Đại học Công nghệ, ĐHQGHN

E-mail: [email protected], [email protected]: 0987.257.504

Bài giảng

PHÁT TRIỂN ỨNG DỤNG WEB

Công nghệ ASPBài 4

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

Nội dung

• Kiến trúc của ứng dụng Web động• ASP• Kết nối dữ liệu bằng ADO• Tạo dự án web động với ASP

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

Web động

• Nội dung trang web (HTML + CSS + JavaScript) được Web Server sinh ra khi có yêu cầu từ Client.

• Rất phổ dụng: Hầu hết các trang web thương mại đều là web động.

• Sử dụng ngôn ngữ lập trình đa năng để sinh ra nội dung web.

• Sử dụng CSDL.

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

Kiến trúc web động

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

Web động với CSDL

WebServer

WebBrowser

Database Provider

http://www....

Yêu cầu dữ liệu

Thao tác CSDLDữ liệu

Dữ liệu

Nội dung (HTML)

CSDL

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

Web Server

• Nhận yêu cầu từ client.– Đối tượng nhận yêu cầu: Request

• Sinh nội dung web (HTML, javascript, css) và gửi cho web client

– Đối tượng Response

• Lưu trạng thái phiên làm việc– Đối tượng lưu các biến phiên: Session

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

ASP (Active Server Page)

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

ASP

• ASP là một công nghệ phát triển web động được phát triển bởi Microsoft, hiện nay còn được sử dụng rộng rãi.

• Ưu điểm của ASP là đơn giản, dễ nắm bắt, dễ sử dụng

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

ASP – Đặc điểm

• Các trang có tên mở rộng *.asp• Mã ASP tựa VB, được nhúng trong các

trang HTML và được trình thông dịch ASP (asp.dll) thông dịch

• Phần mã ASP được nhúng trong trang HTML được thực thi để sinh ra phần động của trang web.

• Mã ASP được nhúng trong HTML được để trong cặp thẻ <% và %>

• Để in ra một giá trị ta để giá trị giữa cặp thẻ <%= và %>.

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

ASP – Đặc điểm

• Dữ liệu không định kiểu• Mỗi câu lệnh được viết trên 1 dòng,

không có dấu chấm câu• Có đầy đủ các cấu trúc điều khiển:

tuần tự, lặp, rẽ nhánh

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

ASP – Rẽ nhánh if …then

If dieukien thenCac lenh

End if

If dieukien thenCac lenh

ElseCac lenh khac

End if

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

ASP – Rẽ nhánh select case

Select case bieuthucCase giatri1

Cac lenh 1

Case giatri2Cac lenh 2

…Case giatri n

Cac lenh n

End select

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

ASP – Lặp do while

Do while dieukienCac lenh

Loop

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

ASP – Câu lệnh lặp for

For dk = giatri1 to giatri2Cac lenh

Next

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

ASP – Đối tượng Response

• Response là đối tượng được định nghĩa trước trong mỗi trang ASP, được sử dụng để sinh ra đáp ứng

• Hai phương thức quan trọng nhất của đối tượng Response là:

– Viết ra nội dung trang HTML: Response.Write(object)

– Chuyển sang một trang khác: Response.Redirect(url)

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

Đối tượng Response –Ví dụ

• Response.Write(“<h1>Xin chao</h1>”); sẽ in ra HTML một đề mục cấp 1 có nội dung “Xin chao”

• a = 200;• Response.Write(a); sẽ in ra HTML văn bản có

nội dung “200”

• Response.Redirect(“Bantin.asp?cid=10&id=123”); sẽ chuyển trình duyệt sang trang Bantin.asp và truyền hai tham số có tên là cid, id cùng giá trị các tham số tương ứng là 10 và 123.

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

ASP – Đối tượng Request

• Request là đối tượng được định nghĩa trước trong mỗi trang ASP, được sử dụng để nhận yêu cầu của người dùng

• Để nhận giá trị một tham số từ yêu cầu

giatri = Request(“tenThamso”)

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

Request –Nhận giá trị tham số (1)

• Giả sử các tham số được truyền cùng URL là

• http://uet.vnu.edu.vn/News.asp?cid=10&id=123• Trong News.asp, chúng ta sử dụng

các câu lệnh sau để lấy giá trị cid và idcid = Request(“cid”)id = Request(“id”)

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

Request –Nhận giá trị tham số (2)• Giả sử các tham số trên form thuộc trang

Nhap.asp được truyền cùng URL theo phương thức POST là

• <form action = “Kiemtra.asp”>– <input type = “text” name = “hoten” width =

“200”>– <input type = submit value = “Chap nhan”>

• <form>

• Lấy họ tên do người dùng nhập (trong Kiemtra.aspx.cs)

sHoten = Request(“hoten”)

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

Kết nối CSDL bằng ADO

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

ADO – ActiveX Data Object

• ADO là công nghệ truy cập CSDL đơn giản, cho phép truy cập nhiều nguồn CSDL khác nhau.

• Đối tượng ADODB.Connection được sử dụng để kết nối CSDL và thực thi các lệnh cập nhật (insert, delete, update)

• Đối tượng ADODB.Recordset được sử dụng để thực thi lệnh truy vấn (select) và lưu và duyệt kết quả truy vấn.

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

ADO – Kết nối CSDL

Xác định chuỗi kết nốiVới CSDL Access

strcon = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & Server.MapPath(“DL1.mdb")

Với CSDL SQL Serverstrcon = "Provider=SQLOLEDB.1; Persist Security

Info=True;User ID=sa; Password=sa;Initial Catalog=CSDL; Data Source=SERVER;“

Tạo và mở kết nốiSet conn =

Server.CreateObject("ADODB.Connection")conn.Open strcon

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

ADO – Cập nhật CSDL

sql= câu lệnh cập nhật (insert, update, delete)

conn.execute sql

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

ADO – Truy vấn CSDL

Tạo và mở recordset

set rs = server.CreateObject("ADODB.Recordset")

sql = "select …”

rs.open sql, connDuyệt các bản ghi để đọc giá trị

do while not rs.eof

gt1 = rs(“thuoctinh1")

gt2 = rs(“thuoctinh2")

…..

rs.movenext

loopĐóng và hủy recordset khi đã hoàn thành truy vấn và lấy giá trị

rs.close

set rs =nothing

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

ADO – Sử dụng lại với bao hàm tệp

Tạo một tệp sẽ được sử dụng như thư viện, ví dụ DBConnection.asp

Strcon = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & Server.MapPath("Data\ducminh.mdb")

if isobject(conn) then

if conn.state = 0 then

conn.Open strcon

end if

else

Set conn = Server.CreateObject("ADODB.Connection")

conn.Open strcon

end if

Các tệp khác bao hàm tệp này để sử dụng lại, tránh phải viết nhiều lần, sửa sai nhiều lần<!--#INCLUDE FILE="DBConnection.asp"-->

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.

Tiếp theoỨng dụng CSDL trên nền web

Lê Đình Thanh, Bài giảng Phát triển ứng dụng web.