Bài giảng Lập trình mạng - Lê Anh Tú

MỤC LỤC

Chương 1- Mở đầu . 4

1.1. Mạng máy tính và lịch sửphát triển . 4

1.2. Mô hình WWW (world wide web) và các dịch vụliên quan . 4

1.3. Thếnào là trang web tĩnh, trang web động . 4

1.4. Các bước phát triển của web . 5

1.5. Các công cụvà công nghệthiết kếweb . 5

Chương 2- Ngôn ngữ HTML . 6

2.1. Thẻ(tag) HTML là gì? . 6

2.2. Cấu trúc của một trang HTML . 6

2.3. Các thẻ định cấu trúc tài liệu . 6

2.4. Các thẻ định dạng . 7

2.5. Thẻtạo link (liên kết) . 8

2.6. Thẻtạo frame (khung) . 8

2.7. Thẻtạo Form . 9

2.8. Thẻtạo đối tượng FORM . 9

2.9. ThẻMarquee-tạo chữchạy . 11

2.10. Các thẻtạo bảng . 11

2.11. Một sốthẻMultimedia . 11

2.12. Bảng mã và tên gọi trong HTML của một sốký tự đặc biệt . 13

2.13. Thiết kếweb sửdụng Microsoft Frontpage . 13

2.13.1. Các thao tác chính khi soạn thảo một trang web . 13

2.13.2. Tạo các thành phần của trang web. 14

2.14. Bài tâp thực hành . 15

2.14.1. Tạo trang web cho nhóm. . 15

2.14.2. Tham khảo các site . 16

2.14.3. Thiết kếwebsitte theo các mẫu. 17

Chương 3- Ngôn ngữkịch bản Javascript . 22

3.1. Tổng quan vềJavaScript. 22

3.2. Nhúng JavaScript vào trang tài liệu HTML . 22

3.2.1. Sửdụng thẻ<SCRIPT> . 22

3.2.2. Sửdụng một file nguồn JavaScript . 23

3.2.3. Sửdụng thẻ<Noscript> . 23

3.3. Hiển thịdòng Text . 23

3.4. Giao tiếp với người sửdụng . 24

3.5. Khai báo biến . 25

3.6. Kiểu dữliệu . 25

3.6.1. Kiểu nguyên (INTERGER) . 25

3.6.2. Kiểu dấu phNy động (FLOATING POINT) . 25

3.6.3. Kiểu LOGIC (BOOLEAN) . 25

3.6.4. Kiểu chuỗi (STRING) . 25

3.7. Các toán tử. 26

3.8. Cấu trúc lệnh . 27

3.8.1. Câu lệnh rẽnhánh . 27

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

3.8.3. Câu lệnh break và continue . 29

3.9. Hàm . 29

3.9.1. Khai báo hàm . 29

3.9.2. Các hàm có sẵn . 29

3.10. Các lệnh thao tác trên đối tượng . 29

3.10.1. for in . 29

3.10.2. new . 30

3.10.3. this . 31

3.10.4. with . 31

3.11. Khai báo dữliệu kiểu mảng . 32

3.12. Xửlý sựkiện . 32

3.13. Các đối tượng trong Javascript . 36

3.13.1. Đối tượng navigator . 37

3.13.2. Đối tượng window . 38

3.13.3. Đối tượng location . 40

3.13.4. Đối tượng frame . 40

3.13.5. Đối tượng DOCUMENT . 43

3.13.6. Đối tượng anchors . 44

3.13.7. Đối tượng FORMS . 44

3.13.8. Đối tượng HISTORY . 45

3.13.9. Đối tượng LINKS . 46

3.13.10. Đối tượng MATH . 46

3.13.11. Đối tượng DATE . 47

3.13.12. Đối tượng STRING . 48

3.13.13. Xem lại các lệnh và mởrộng . 49

3.14. Mô hình đối tượng (OBJECT MODEL) . 51

3.14.1. Đối tượng và thuộc tính . 51

3.14.2. Tạo các đối tượng mới . 52

3.15. Bài tập thực hành . 57

3.15.1. Bài Tập 1 . 57

3.15.2. Bài tập 2 . 57

3.15.3. Bài tập 3 . 57

3.15.4. Bài tập 4 . 58

3.15.5. Bài tập 5 . 59

3.15.6. Bài tập 6 . 60

3.15.7. Bài tập 7 . 62

3.15.8. Bài tập 8 . 63

3.15.9. Bài tập 9 . 64

3.15.10. Bài tập 10 . 65

3.15.11. Bài tập 11 . 66

3.15.12. Bài tập 12 . 67

3.15.13. Bài tập 13 . 69

3.15.14. Bài tập 15 . 70

3.15.15. Bài tập 15 . 70

3.15.16. Bài tập 16 . 71

3.15.17. Bài tập 17 . 72

3.15.18. Bài tập 18 . 72

Chương 4- Lập trình web động với ASP (Active Server Page) . 75

4.1. Giới thiệu ngôn ngữlập trình web động ASP . 75

4.2. Web Server IIS . 76

4.3. Cài đặt và chạy ứng dụng ASP đầu tiên . 79

4.3.1. Cấu hình cho Website trên IIS . 80

4.3.2 Viết các file ASP . 81

4.3.3 Dùng trình duyệt truy cập website . 81

4.4. Tóm tắt các cú pháp VBScript . 84

4.4.1. Response.write . 85

4.4.2. Biến . 85

4.4.3. Mảng . 85

Bài giảng môn học: Lập trình mạng

GV: Lê Anh Tú - Bộmôn Mạng & Truyền thông - Khoa CNTT - ĐHTN 3

4.4.4. Ghép chuỗi . 85

4.4.5. Hàm có sẵn . 86

4.4.6. Rẽnhánh . 88

4.4.7. Lặp . 88

4.4.8. Điều kiện and ,or, not . 89

4.4.9. Thủtục và hàm người dùng . 89

4.4.10. Sửdụng #include . 91

4.5. Các đối tượng căn bản . 91

4.5.1. Đối tượng Request . 91

4.5.2. Response . 93

4.5.3. Đối tượng Session . 93

4.5.4. Đối tượng Application . 94

4.5.5. File Global.asa .95

4.5.6. Đối tượng Dictionary . 96

4.5.7. Đối tượng Server . 96

4.5.7.1. Server.CreateObject . 96

4.5.7.2. Server.Mappath . 97

4.6. Sửdụng Database với ASP . 97

4.6.1. Các cú pháp căn bản đểtruy xuất dữliệu từDB . 97

4.6.2. Đối tượng Connection . 97

4.6.3. Đối tượng Recordset . 98

4.6.4. Tìm kiếm dữliệu trong database . 101

PHỤLỤC . 102

Phụlục 1: Bài tập truy nhập các điều khiển trên Form . 102

Phụlục 2: Thiết kếform đăng nhập cho phép lưu lại tên tài khoản và mật khNu . 104

Phụlục 3: Hiển thị ảnh quảng cáo và sốlượt truy cập . 107

Phụlục 4: Bài tập ADO, Phân trang với Recordset . 108

pdf115 trang | Chuyên mục: Lập Trình Hệ Thống Và Mạng | Chia sẻ: dkS00TYs | Lượt xem: 1657 | Lượt tải: 1download
Tóm tắt nội dung Bài giảng Lập trình mạng - Lê Anh Tú, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
cessful ! 
 Do you want 
<% 
'N han Logout de huy Cookies 
if request.form("cmdLogout")"" then 
 response.cookies("Acc")("user")="" 
 response.cookies("Acc")("pass")="" 
 'Khong dung` Expires thi Cookies se bi huy 
 'ngay sau khi dong IE hien hanh` 
 response.redirect("Login1.asp") 
end if 
%> 
2. Nâng cấp chương trình: 
Yêu cầu kiểm tra tài khoản đang nhập có tồn tại trong CSDL không. Làm theo các bước sau: 
(1) Tạo CSDL HOSO.MDB và bảng Account(ID(Autonumber), User(Text), Pass(Text)) 
(2) Viết file Connection.inc kết nối tới CSDL 
Connection.inc 
<% 
Set Conn=Server.CreateObject("ADODB.Connection") 
FilePath= Server.Mappath("Hoso.mdb") 
StrConn="Provider=Microsoft.Jet.OLEDB.4.0; Data source=" & FilePath 
Conn.Open StrConn 
Set RS=Server.CreateObject("ADODB.Recordset") 
%> 
(3) Chèn đoạn mã sau đây vào trước thẻ trong file Login.asp 
<% 
ID=request.cookies("Acc")("user") 
PWD=request.cookies("Acc")("Pass") 
'Mo bang du lieu Account va chon ra dung TK da luu trong Cookies 
StrSQL="Select * from Account Where (User='" & ID & "')AN D(Pass='" & PWD & "')" 
RS.Open StrSQL,Conn 
%> 
(4) Sửa lại dòng gạch chân sau thẻ như sau: 
<% 
'Kiem tra neu da co Cookies thi dang nhap luon vao trang Home.asp 
If not rs.eof then 
 response.redirect("Home.asp") 
else 
'N eu chua co Cookies thi cho hien giao dien dang nhap 
%> 
Bài giảng môn học: Lập trình mạng 
GV: Lê Anh Tú - Bộ môn Mạng & Truyền thông - Khoa CNTT - ĐHTN 107
************************************************** 
Phụ lục 3: Hiển thị ảnh quảng cáo và số lượt truy cập 
Yêu cầu cho phép: 
- Đếm số lượt người đã truy cập 
- Hiển thị ảnh quảng cáo ngẫu nhiên 
 Yêu cầu: Sử dụng file Global.asa 
(Ghi chú: Chuẩn bị sẵn 3 ảnh: 1.gif, 2.gif, 3.gif) 
File Global.asa 
<OBJECT ID="Dem" RUNAT="Server" SCOPE="Application" 
PROGID="MSWC.Counters"> 
<OBJECT ID="Pic" RUNAT="Server" SCOPE="Application" 
PROGID="MSWC.Adrotator"> 
File Quangcao.asp 
<% 
response.write "So luot ttruy cap website la:" 
%> 
<% 
dem.Increment("k") 
response.write dem.get("k") 
%> 
<% 
=pic.GetAdvertisement("quangcao.txt") 
‘noi dung file quangcao.txt nhu tren 
%> 
File Quangcao.txt 
REDIRECT /login.asp 
WIDTH 300 
HEIGHT 300 
BORDER 1 
* 
1.gif 
Trang chu Viet Nam 
60 
2.gif 
Ma nguon VB 
40 
3.gif 
Trang tin tuc 
20 
Bài giảng môn học: Lập trình mạng 
GV: Lê Anh Tú - Bộ môn Mạng & Truyền thông - Khoa CNTT - ĐHTN 108
Phụ lục 4: Bài tập ADO, Phân trang với Recordset 
1. Tạo CSDL HOSO.MDB và thiết kế các bảng dữ liệu có cấu trúc như sau: 
Tạo quan hệ giữa 2 bảng như sau: 
2. Thiết kế trang DEFAULT.ASP cho phép hiển thị các thông tin về sinh viên như sau: 
Chú ý: 
- Sử dụng kỹ thuật phân trang 
- Các chức năng ADD, EDIT, DELETE để thực hiên các chức năng thêm mới, sửa, xóa các bản 
ghi 
- Nhấn vào Mã SV cho phép liên kết đến trang xem tổng hợp thông tin cá nhân về SV đó (Ví dụ: 
Profile.asp) 
Bảng Sinhvien 
Bảng Tinh 
Bài giảng môn học: Lập trình mạng 
GV: Lê Anh Tú - Bộ môn Mạng & Truyền thông - Khoa CNTT - ĐHTN 109
3. Yêu cầu thiết giao diện các trang thêm mới và sửa như sau: 
- Giao diện cập nhật SV mới 
- Giao diện thay đổi thông tin cá nhân 1 SV đã nhập 
MÃ NGUỒN MẦU 
File Connection.inc 
<% 
FilePath=Server.Mappath("Hoso.mdb") 
Set Conn=Server.CreateObject("ADODB.COnnection") 
StrConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & FilePath 
Conn.Open strConn 
Set RS=Server.CreateObject("ADODB.Recordset") 
%> 
File Default.asp 
<% 
'Su dung Query trong Access de tao xau truy van nhu duoi day 
StrSQL="SELECT SinhVien.*, [Tinh].[Tentinh] FROM Tinh INNER JOIN SinhVien ON 
[Tinh].[MaTinh]=[SinhVien].[MaTinh];" 
'Dat thuoc tinh cho RS co kha nang phan trang 
RS.CursorLocation=3 
RS.Pagesize=3 
RS.Open StrSQL,Conn,0,1 
'Xac dinh trang hien thoi 
Session("CurrenPage")=1 
If request("PageID")"" then 
 Session("CurrenPage")=Cint(request("PageID")) 
End if 
If not(RS.eof or RS.bof) then 
 RS.Absolutepage=Session("CurrenPage") 
End if 
%> 
Bài giảng môn học: Lập trình mạng 
GV: Lê Anh Tú - Bộ môn Mạng & Truyền thông - Khoa CNTT - ĐHTN 110
Phân trang với RS 
DANH SACH SINH VIEN 
Page of 
 STT 
 Sửa 
 Xóa 
 Mã SV 
 Họ và tên 
 Giới tính 
 Tuổi 
 Ngày vào đoàn 
 Tên Tỉnh 
 Sở thích 
<% 
i=RS.Pagesize*(Session("CurrenPage")-1) 
While not RS.eof and RS.AbsolutePage=Session("CurrenPage") 
 i=i+1 
%> 
 checked name="RdoSua"> 
 > 
> 
 <% 
 If RS.Fields("Gioitinh") then 
 Response.Write("Nam") 
 Else 
 Response.Write("Nu") 
 End if 
 %> 
<% 
RS.MoveNext 
Wend 
%> 
 <%If Session("CurrenPage")=1 then 
 Response.write("Back") 
 Else%> 
Bài giảng môn học: Lập trình mạng 
GV: Lê Anh Tú - Bộ môn Mạng & Truyền thông - Khoa CNTT - ĐHTN 111
 >Back 
 <% 
 k1=Session("CurrenPage")-1 
 k2=Session("CurrenPage")+1 
 If k1<1 then k1=1 
 If k2>RS.PageCount then k2=RS.PageCount 
 For i=k1 to k2 
 Response.write (" ") 
 If i=Session("CurrenPage") then 
 Response.write(i) 
 Else%> 
 > 
 <%End if 
 Next 
 %> 
 <%If Session("CurrenPage")=RS.PageCount then 
 Response.write("Next") 
 Else%> 
 >Next 
 <%End if 
 RS.Close 
 %> 
File Xuly_Default.asp 
<% 
if request.form("cmdAdd")"" then 
 response.redirect("Them.asp") 
end if 
if request.form("cmdEdit")"" then 
 session("MaSV")=request.form("rdoSua") 
 response.redirect("Sua.asp") 
end if 
if request.form("cmdDelete")"" then 
%> 
<% 
end if 
%> 
File Them.asp 
<% 
StrSQL="Select * from Tinh Order By Tentinh" 
RS.Open StrSQL,Conn 
%> 
Bài giảng môn học: Lập trình mạng 
GV: Lê Anh Tú - Bộ môn Mạng & Truyền thông - Khoa CNTT - ĐHTN 112
Thêm mới SV 
 CẬP NHẬT SINH VIÊN 
 Mã SV 
 HỌ và tên 
 Giới tính 
 Nam 
 Nữ 
 Tuổi 
 Ngày vào đoàn 
 selected value=> 
 selected value=> 
 > 
 Tỉnh 
 <% 
 While not Rs.eof 
 %> 
 > 
 <% 
 RS.MoveNext 
 Wend 
 RS.Close 
 %> 
 Sở thích 
 Du lịch 
 Thể thao 
 Xem TV 
 Ca nhạc 
Bài giảng môn học: Lập trình mạng 
GV: Lê Anh Tú - Bộ môn Mạng & Truyền thông - Khoa CNTT - ĐHTN 113
File Xuly_them.asp 
<% 
StrSQL="Select * from Sinhvien" 
RS.Open StrSQL,Conn,1,3 
RS.AddNew 
RS.Fields("MaSV")=request.form("txtMaSV") 
RS.Fields("Hoten")=request.form("txtHoten") 
RS.Fields("MaSV")=request.form("txtMaSV") 
If Request.form("rdoGT")="Nam" then 
 RS.Fields("Gioitinh")=True 
else 
 RS.Fields("Gioitinh")=False 
End if 
RS.Fields("Tuoi")=request.form("txtTuoi") 
ND=request.form("optThang")&"/"&request.form("optNgay")&"/"&request.form("optNam") 
RS.Fields("NgayDoan")=Cdate(ND) 
RS.Fields("Matinh")=request.form("optTinh") 
RS.Fields("Sothich")=request.form("chkST") 
RS.Update 
RS.Close 
response.redirect("Default.asp") 
%> 
File Sua.asp 
<% 
StrSQL="Select * from Tinh Order By Tentinh" 
RS.Open StrSQL,Conn 
StrSQL1="Select * from Sinhvien Where MaSV='" & session("MaSV") & "'" 
Set RS1=Server.CreateObject("ADODB.Recordset") 
RS1.Open StrSQL1,Conn 
%> 
Sửa thông tin SV 
SUA THÔNG TIN SINH VIÊN 
 Mã SV 
 Họ và tên 
> 
 Giới tính 
 checked 
name="rdoGT">Nam 
Bài giảng môn học: Lập trình mạng 
GV: Lê Anh Tú - Bộ môn Mạng & Truyền thông - Khoa CNTT - ĐHTN 114
 checked 
value="Nu">Nữ 
 Tuổi 
 > 
 Ngày vào đoàn 
 selected 
value=> 
 selected 
value=> 
 selected 
value=> 
 Tỉnh 
 <% 
 While not Rs.eof 
 %> 
 Selected 
value=> 
 <% 
 RS.MoveNext 
 Wend 
 %> 
 Sở thích 
<input type="checkbox" name="chkST" value="Du lich" <%if 
instr(Ucase(rs1.fields("Sothich")),ucase("Du lich"))>0 then%> checked >Du lịch 
<input type="checkbox" name="chkST" value="The thao" <%if 
instr(Ucase(rs1.fields("Sothich")),ucase("The thao"))>0 then%> checked >Thể thao 
<input type="checkbox" name="chkST" value="Xem TV" <%if 
instr(ucase(rs1.fields("Sothich")),ucase("Xem TV"))>0 then%> checked >Xem TV 
<input type="checkbox" name="chkST" value="Ca nhac" <%if 
instr(ucase(rs1.fields("Sothich")),ucase("Ca nhac"))>0 then%> checked >Ca nhạc 
Bài giảng môn học: Lập trình mạng 
GV: Lê Anh Tú - Bộ môn Mạng & Truyền thông - Khoa CNTT - ĐHTN 115
<% 
rs.Close 
rs1.Close 
%> 
File Xuly_sua.asp 
<% 
StrSQL="Select * from Sinhvien Where MaSV='" & session("MaSV") & "'" 
RS.Open StrSQL,Conn,1,3 
RS.Fields("Hoten")=request.form("txtHoten") 
If Request.form("rdoGT")="Nam" then 
 RS.Fields("Gioitinh")=True 
else 
 RS.Fields("Gioitinh")=False 
End if 
RS.Fields("Tuoi")=request.form("txtTuoi") 
ND=request.form("optThang")&"/"&request.form("optNgay")&"/"&request.form("optNam") 
RS.Fields("NgayDoan")=Cdate(ND) 
RS.Fields("Matinh")=request.form("optTinh") 
RS.Fields("Sothich")=request.form("chkST") 
RS.Update 
RS.Close 
response.redirect("Default.asp") 
%> 
File Xoa.asp 
<% 
For i=1 to request.form("chkXoa").Count 
 If request.form("chkXoa")(i)"" then 
 StrSQL="Select * from SinhVien Where MaSV='" & request.form("chkXoa")(i) & "'" 
 RS.Open StrSQL,Conn,1,3 
 RS.Delete 
 RS.Close 
 end if 
next 
Response.redirect("Default.asp") 
%> 
File Profile.asp 
<% 
StrSQL="SELECT SinhVien.*, Tinh.* FROM Tinh INNER JOIN SinhVien ON 
[Tinh].[MaTinh]=[SinhVien].[MaTinh] WHERE MaSV=' " & request("MaSV_ID") & " ' “ 
RS.Open StrSQL,Conn 
Response.write "Mã SV: " & RS.fields("MaSV") & "" 
Response.write "Họ tên: " & RS.fields("Hoten") & "" 
Response.write "Giới tính: " 
If rs.fields("Gioitinh") then 
 Response.write "Nam" & "" 
else 
 Response.write "Nữ" & "" 
end if 
Response.write "Tuổi: " & RS.fields("Tuoi") & "" 
Response.write "Ngày vào đoàn: " & RS.fields("Ngaydoan") & "" 
Response.write "Tỉnh/Tp: " & RS.fields("Tentinh") & "" 
Response.write "Sở thích: " & RS.fields("Sothich") & "" 
%> 
Quay lại 

File đính kèm:

  • pdfBài giảng Lập trình mạng - Lê Anh Tú.pdf
Tài liệu liên quan