Bài giảng Thiết kế và lập trình Web - Hải Phòng

MỤC LỤC

Chƣơng 1: TỔNG QUAN . 5

1.1. Internet . 5

1.1.1. Lịch sử mạng Internet . 5

1.1.2. Một số khái niệm liên quan đến mạng Internet . 5

1.1.3 World Wide Web . 6

1.1.4. Thƣ điệntử (E-mail) . 9

1.2. Các kiểu mạng . 9

1.3. Kiến trúc Client – server . 10

Chƣơng 2: NGÔN NGỮ SIÊU VĂN BẢN HTML . 12

2.1. Khái niệm cơ bản về ngôn ngữ HTML . 12

2.2. Lập trình web với ngôn ngữ HTML . 12

2.2.1. Các thành phần cơ bản của html . 12

2.2.2. Cấu trúc tệp HTML . 13

2.3. Các thẻ cơ bản trong HTML . 13

2.3.1. Thẻ giải thích . 13

2.3.2. Các thẻ định dạng văn bản . 13

2.3.3. Tạo liên kết (link) . 16

2.3.4. Một số kí tự đặc biệt trong HTML. 17

2.3.5. Các thẻ dùng thiết kế bảng . 17

2.3.6. Các thẻ tạo Frame . 18

2.3.7. Các thẻ dùng tạo Form . 19

CHƢƠNG 3. NGÔN NGỮ KỊCH BẢN JAVASCRIPT . 21

3.1. Mở đầu . 21

3.2. Cú pháp cơ bản JavaScript . 21

3.2.1. Kiểu dữ liệu. 22

3.2.2. Hằng và biến . 23

3.2.3. Các toán tử . 23

3.2.4 Câu lệnh . 26

3.2.5 Câu lệnh điều kiện . 26

3.2.6 Câu lệnh lặp . 28

3.3. Tƣơng tác giữa JavaScript và HTML . 30

3.3.1. Sử dụng thẻ <SCRIPT> . 30

3.3.2. Sử dụng các tệp tin bên ngoài . 31

3.4. Các đối tƣợng của trình duyệt . 31

Chƣơng 4: NGÔN NGỮ KỊCH BẢN VBSCRIPT . 38

4.1. Mở đầu . 38

4.2. Cú pháp cơ bản của VBScrip . 38

4.2.1. Khai báo hằng, biến, mảng . 38

4.2.2. Chú thích . 39

4.2.3. Các toán tử . 39

4.2.4. Các cấu trúc điều khiển . 39

- 2 -4.2.5. Hàm và Thủ tục . 40

4.3. Tƣơng tác giữa VBScript và HTML . 41

4.4. Các đối tƣợng của trình duyệt . 42

4.4.1. Đối tƣợng ERR . 42

4.4.2. Đối tƣợng kịch bản DICTIONARY . 43

4.4.3. Đối tƣợng FileSystemObject . 43

Chƣơng 5: ACTIVE SERVER PAGE. . 46

5.1. Mô hình các lớp . 46

5.2. Thiết lập WebServer. 47

5.2.1. ASP (Active Server Page) . 47

5.2.2. Trang ASP . 47

5.2.3. IIS (Internet Information Server) . 48

5.3. Xử l các yêu cầu của IIS . 48

5.4. Mô hình đối tƣợng . 49

5.5. Các đối tƣợng của ASP . 50

5.5.1. Đối tƣợng Application . 50

5.5.2. Đối tƣợng AspError . 52

5.5.3. Đối tƣợng ObjectContext . 52

5.5.4. Đối tƣợng Response . 53

5.5.5. Đối tƣợng Request . 55

5.5.6. Đối tƣợng Server . 58

5.5.7. Đối tƣợng Session . 60

pdf64 trang | Chuyên mục: HTML | Chia sẻ: dkS00TYs | Lượt xem: 2158 | Lượt tải: 2download
Tóm tắt nội dung Bài giảng Thiết kế và lập trình Web - Hải Phòng, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
 kèm 
trong một HTTP request. Nếu browser dùng giao thức SSL3.0 để kết nối với server và server 
yêu cầu certificate thì browser mới gửi trƣờng này, ngƣợc lại ClientCertificate có giá trị 
EMPTY 
  ServerVariables : chứa tất cả thông tin về biến môi trƣờng và ta sử dụng những 
biến này để truy cập vào HTTP header. 
 Cú pháp : Request. ServerVariables (EnvironmentVariable) 
 - 58 - 
 Ví dụ : 
<% 
IPAddress = Request.ServerVariables("REMOTE_ADDR") 
Software = Request.ServerVariables("SERVER_SOFTWARE") 
Protocol = Request.ServerVariables("SERVER_PROTOCOL") 
Response.Write "Your IP Address is " & IPAddress & " and your server is running " 
& Software & " under " & Protocol & "protocol." 
%> 
 Kết quả hiển thị trên trang web: 
 Your IP Address is 127.0.0.1 and your server is running Microsoft-IIS/5.1 under 
HTTP/1.1 protocol. 
 Để liệt kê các biến môi trƣờng đƣợc lƣu trữ trong tập hợp ServerVariables, ta có đoạn 
script : 
<% 
for each key in Request.ServerVariables 
response.write(key+": "+Request.ServerVariables(key)+"") 
next 
%> 
5.5.6. Đối tượng Server 
 Đối tƣợng Server cung cấp các thuộc tính và các phƣơng thức dùng để truy cập web 
server. 
- Các thuộc tính : 
  ScriptTimeOut : quy định thời gian lớn nhất mà các lệnh script còn đƣợc thực 
hiện, giá trị mặc nhiên là 90 giây. 
- Các phương thức : 
  CreateObject : tạo một thể hiện (instance) của một đối tƣợng dùng trong trang ASP 
hay tạo một đối tƣợng thuộc dạng COM của Windows thực thi phía web server, đây là 
phƣơng thức quan trọng nhất của đối tƣợng Server. 
 Cú pháp : Server.CreateObject(ObjectID) 
 Ví dụ : Server.CreateObject(“ADODB.Connection”) 
  Execute : cho phép ta gọi một trang ASP khác từ một trang ASP. Ví dụ: 
---CallingAsp.asp--- 
How now cow? 
---CalledAsp.asp--- 
<% 
Response.Write "pink" 
%> 
 Kết quả sẽ hiển thị : How now pink cow? 
  GetLastError : phƣơng thức này trả lại đối tƣợng ASPError mô tả các lỗi xảy ra về 
các loại Script, runtime. Ví dụ : 
<% 
Dim objErrorInfo 
 - 59 - 
Set objErrorInfo = Server.GetLastError 
Response.Write("ASPCode = " & objErrorInfo.ASPCode) 
Response.Write("ASPDescription = " & objErrorInfo.ASPDescription) 
Response.Write("Category = " & objErrorInfo.Category) 
Response.Write("Column = " & objErrorInfo.Column) 
Response.Write("Description = " & objErrorInfo.Description) 
Response.Write("File = " & objErrorInfo.File) 
Response.Write("Line = " & objErrorInfo.Line) 
Response.Write("Number = " & objErrorInfo.Number) 
Response.Write("Source = " & objErrorInfo.Source) 
%> 
  HTMLEncode : dùng để mã hoá một chuỗi HTML để khi nó hiển thị trong trình 
duyệt, trình duyệt sẽ không dịch HTML nhƣ là các lệnh trình bày văn bản. 
 Cú pháp : Server.HTMLEncode(string) 
 Ví dụ : 
 ") %> 
 Kết quả mã hoá : The tag for a table is: <Table> 
 Kết quả hiển thị trên trang web: The tag for a table is: 
  URLEncode : mã hoá chuỗi string theo quy tắc chuyển đổi của URL hiểu đƣợc bởi 
các trình duyệt phía máy client. 
Ví dụ : 
 Kết quả hiển thị trên trang web: 
 http%3A%2F%2Fwww%2Eud%2Eedu%2Evn 
  MapPath : chuyển đƣờng dẫn URL ảo thành đƣờng dẫn vật l của ổ đĩa trên web 
server. 
 Ví dụ : Giả sử ta có test.asp đặt trong virtual folder là ASP và thư mục vật lý là 
E:\Documents and Settings\Administrator\My Documents\My Webs\ASP 
The path of this file is : 
 Kết quả hiển thị trên trang web: 
 The path of this file is : 
 E:\Documents and Settings\Administrator\My Documents\My Webs\ASP\test.asp 
  Transfer : phƣơng thức này cho phép truyền toàn bộ thông tin từ trang ASP này 
sang trang ASP khác. 
 Ví dụ : trang ASP Calling.asp sẽ truyền toàn bộ thông tin chứa trong các đối tƣợng 
sang trang Called.asp. 
----Calling.asp---- 
<% 
Application("name") = "Giáo trình thiết kế & Lập trình Web" 
Application("publishdate") = "01/01/05" 
Application("author") = "Ngô Đình Thƣởng" 
 - 60 - 
Set Application("Obj1") = Server.CreateObject("ADODB.Connection") 
Server.Transfer("CalledAsp.asp") 
%> 
----Called.asp---- 
<%; 
Response.Write "Output from Called.asp" +”” 
For Each Item in Application.Contents 
 If IsObject(Application.Contents(Item)) Then 
 Response.Write Item & " is an object." 
 Else 
 Response.Write Item & "=" & Application.Contents(Item) & "" 
 End If 
Next 
%> 
 Kết quả hiển thị do trang Called.asp phát sinh 
 Output from Called.asp : 
 name = Giáo trình thiết kế & Lập trình Web 
 publishdate = 01/01/2005 
 author = Ngô Đình Thƣởng 
 OBJ1 is an object. 
5.5.7. Đối tượng Session 
 Đối tƣợng Session là đối tƣợng đƣợc web server tự động khởi tạo khi trang web đầu 
tiên của ứng dụng đƣợc ngƣời sử dụng gọi, đối tƣợng Session đƣợc dùng để lƣu lại các thông 
tin của các ngƣời dùng tại một phiên làm việc nhƣ tên, id v.v., đối tƣợng này sẽ tồn tại cho 
đến khi bị huỷ hay hết hiệu lực (time out) 
 Cú pháp : Session.Collecton | Property | Method 
- Các thuộc tính : 
  CodePage : để yêu cầu webserver mã hoá dữ liệu trong các hằng, biến chuỗi theo 
bảng mã sẽ đƣợc dùng để hiển thị tại client. Ví dụ sau đây yêu cầu webserver mã hoá các 
chuỗi dữ liệu theo bảng mã UTF-8: 
 „ dùng cho toàn bộ các trang trong session hiện hành, nếu muốn chỉ xác định 
 „ codepage cho một trang hiện hành : 
 Để có thông tin về codepage của các ngôn ngữ khác, có thể xem thông tin tại website 
 library/ default.asp? url= /workshop/ author/ dhtml/ reference/ 
charsets/charset4.asp 
  LCID : xác định Id của địa chỉ (LoCation IDentifier) sẽ sử dụng nội dung động. 
LCID là một con số duy nhất một vị trí địa l hay vùng miền, đây là thuộc tính để quy định 
cách hiển thị khuôn dạng ngày giờ, tiền tệ, dấu thập phân, dấu phân cách lớp nghìn trên trang 
web. 
 Ví dụ : 
<% 
Session.LCID = 3079 
Response.Write "This is the LCID for this page " & Session.LCID & "" 
 - 61 - 
Response.Write "This is the Time and Date format for the above LCID: " & NOW() & 
"" 
%> 
 Kết quả hiển thị: 
This is the LCID for this page now 3079 
This is the Time and Date format for the above LCID 27.07.05 14:01:33 
LCID của nƣớc Pháp là 1036. 
  SessionID : là một con số kiểu LongInteger đƣợc phát sinh bởi webserver khi một 
session đƣợc tạo. Mỗi ngƣời dùng sẽ có có một SessionID không giống nhau. Khi webserver 
bị stop và start trở lại thì những SessionID phát sinh lần sau có thể trùng với SessionID phát 
sinh trƣớc khi bị stop. 
  TimeOut : thời gian tồn tại của một Session, tính bằng phút, giá trị mặc định là 20 
phút. Trong khoảng thời gian TimeOut nếu ngƣời sử dụng không Refresh hay không truy cập 
một trang khác của ứng dụng thì Session kết thúc. 
- Các phương thức : 
  Abandon : dùng để hủy đối tƣợng Session và giải phóng tài nguyên của webserver. 
Ví dụ: 
<% 
Response.Write "Your SessionID is " & Session.SessionID 
Session("Application") = "EducationSite" 
Session.Abandon 
Response.Write "The Application name is " & Session("Application") 
%> 
 Contents.Remove : xoá bỏ một mục nội dung trong tập hợp Contents 
Ví dụ : 
<% 
Session("name") = "Session Duty" 
Session("publishdate") = "01/01/05" 
Session("author") = "Education" 
Session.Contents.Remove(1) 
Session.Contents.Remove("publishdate") 
For Each Item in Session.Contents 
 Response.Write Item & "=" & Session.Contents(Item) & "" 
Next 
%> 
 Contents.RemoveAll : xoá bỏ tất cả nội dung trong tập hợp Contents 
- Các tập hợp : 
  Contents : chứa tất cả các đề mục mà chúng ta thiết lập cho đối tƣợng Session mà 
không sử dụng thẻ HTML . 
 Cú pháp : Session.Contents(key) 
Trong đó key là tên của thuộc tính cần nhận về. 
  StaticObjects :chứa tất cả các đề mục mà chúng ta thiết lập cho đối tƣợng Session 
bằng cách sử dụng thẻ HTML khi xây dựng tệp cấu hình ASP Global.asa 
 - 62 - 
 Ví dụ : 
----Global.asa---- 
<OBJECT RUNAT=Server SCOPE=Session ID=MyInfo 
PROGID="MSWC.MyInfo"> 
<OBJECT RUNAT=Server SCOPE=Session ID=MyConnection 
PROGID="ADODB.Connection"> 
<OBJECT RUNAT=Server SCOPE=Session ID=MyADRot 
PROGID="MSWC.ADRotator"> 
---File.asp---- 
<% 
For Each Item In Session.StaticObjects 
Response.Write Item & "" 
Next 
%> 
 Kết quả hiển thị trên trang web: 
MyInfo 
MyConnection 
MyADRot 
 - Các sự kiên : 
  Session_OnEnd : sự kiện này xảy ra khi một Session đƣợc tạo ra, server xử l thủ 
tục này khi thực thi yêu cầu một trang, Session_OnEnd là nơi thuận tiện cho việc thiết lập các 
biến. 
  Session_OnStart : sự kiện này xảy ra khi Session bị huỷ bởi phƣơng thức Abandon 
hoặc time out. Các thủ tục Session_OnStart, Session_OnEnd phải đƣợc đặt trong tệp 
Global.asa. 
 Ví dụ : 
---Global.asa---- 
Sub Application_OnEnd() 
End Sub 
Sub Application_OnStart() 
Application("NumSession") = 0 
Application("NumVisited") = 0 
End Sub 
Sub Session_OnEnd() 
Application("NumSession") = Application("NumSession") - 1 
End Sub 
Sub Session_OnStart() 
Application("NumSession") = Application("NumSession") + 1 
Application("NumVisited") = Application("NumVisited") + 1 
End Sub 
 - 63 - 
 -----File1.asp---- 
Response.Write "You are " & Application("NumSession") & " of " & 
Application("NumVisited") & " users." 
CÂU HỎI VÀ BÀI TẬP 
1. Tại sao VBScript không đƣợc ƣa dùng để viết kịch bản phía client? 
2. Câu lệnh : On Errorr Resume Next là câu lệnh của VBScript hay ASP? Giải thích cách 
áp dụng. 
3. Phân biệt cách sử dụng hai đối tƣợng của ASP: Session và Application. Sử dụng đối 
tƣợng Session để xây dựng một hàm kiểm tra sự đăng nhập hệ thống của một user có 
đƣợc phép hay không? (Giả sử rằng password của các user đƣợc lƣu trong một mãng. 
Trong chƣơng 8, ta sẽ nghiên cứu cách lƣu trữ password trong một bảng) 
4. Cài đặt IIS trên Windows XP Professional, thiết lập virtual directory và quyền của các 
user (administrator và các user khác) trên virtual directory này. Kiểm nghiệm một 
trang ASP đơn giản. Giả sử phisical directory có cấu trúc nhƣ sau: 

File đính kèm:

  • pdfBài giảng Thiết kế và lập trình Web - Hải Phòng.pdf
Tài liệu liên quan