Báo cáo thực tập: Thiết kế website đấu giá qua mạng internet
Trang 1PHẦN I
CƠ SỞ LÝ THUYẾT
Ở các host trên Internet có sự kết hợp các chương trình Server và các chươngtrình Client, chúng cung cấp thông tin và những dịch vụ tới người sử dụng
1.2 INTRANET LÀ GÌ ?
Intranet dựa vào TCP/IP Network nhưng không nối kết tới Internet mà chỉ sửdụng chuẩn truyền thông Internet và các công cụ của nó dùng để cung cấp thôngtin tới người sử dụng trên một mạng riêng Ví dụ một công ty có thể cài đặt mộtWeb server chỉ cho các thành viên của công ty trao đổi thư từ tin tức,thông tinthương mại Các thành viên truy xuất thông tin bằng cách dùng các Web browser
1.3 MÔ HÌNH CLIENT/SERVER
Máy server ở trạng thái hoạt động và chờ yêu cầu của client Khi client cóyêu cầu, máy server đáp ứng yêu cầu đó
Chương trình Client: là chương trình trên một host có sử dụng các thông tin
hay dịch vụ từ những chương trình khác trên Internet Như vậy có thể nói clientchính là những khách hàng Ví dụ về một số chương trình client: web browser trìnhbày nội dung được cung cấp bởi những web server Các chương trình Internet mail
Trang 2client mà người sử dụng dùng làm việc với các thông điệp mail được cung cấp bởicác Mail Server FTP client lấy các tập tin từ FTP server Các Chat client cho phéphội đàm với người khác qua Chat Server Address Book cho phép tìm địa chỉInternet Mail trong LDAP server,
Chương trình Server: là chương trình trên một Host cung cấp thông tin hay
dịch vụ được yêu cầu từ những chương trình client khác trên Internet Server lànhững nhà sản xuất, nhà phục vụ Những chương trình Server tập trung hóa các quátrình và các thông tin làm cho nó có thể được xử lý bởi các chương trình client
Mô hình Client/Server rất có ích đối với tổ chức có đông người cần truy cậpnhanh lượng dữ liễu lớn Mạng Client/Server là phương pháp hiệu quả nhất đểcung cấp :
Khả năng quản lý và truy cập dữ liệu cho những chương trình ứng dụng như là:
Bảng tính điện tử
Kế toán
Giao tiếp, truyền thông
Quản lý tài liệu
Quản lý mạng
Lưu trữ tập tin tập trung
Quản lý cơ sở dữ liệu là ứng dụng phổ biến nhất trong môi trườngClient/Server vì thế sẽ tập trung trình bày càch thức vận hành của các hệ thốngquản lý cơ sở dữ liệu (DMBS)
Máy Server Máy Client
Một mô hình Client/Server đơn giản.
Trang 3 Mô hình thực hiện của công nghệ Client/Server :
Mô hình Client/Server :
Hầu hết mạng máy tính đều hoạt động theo mô hình Client/Server Nói mộtcách đơn giản mạng Client/Server là mạng trong đó máy Client đưa ra yêu cầu, vàmột máy tính đóng vai trò máy Server sẽ đáp ứng yêu cầu đó
Qui trình hoạt động giữa Client/Server :
Câu hỏi cơ sở dữ liệu được gởûi từ máy Client nhưng được xử lý trên máy Server,chỉ có kết quả được trả về máy Client qua mạng Toàn bộ tiến trình tiếp nhận và yêucầu thông tin gồm 6 bước :
1 Máy Client đưa ra yêu cầu cung cấp dữ liệu
2 Yêu cầu được dịch sang SQL
3 Yêu cầu SQL được gửi ngang qua mạng đến máy Server
4 Máy Server cơ sở dữ liệu tiến hành tìm kiếm trên máy tính nơi dữ liệu tồn tại
5 Dữ liệu tìm được theo yêu cầu được gởi trả lại máy Client
6 Dữ liệu được cung cấp cho người dùng
Trong môi trường Client/Server , có hai phần chính :
Chương trình ứng dụng, thường gọi là Client
Bộ phục vụ cơ sở dữ liệu , thường được gọi là Server
SERVER CLIENT
Request
Database
Web browser
Response
Trang 4 Máy Client :
Người dùng đưa ra yêu cầu tại Client Máy Client chạy một chương trình ứngdụng có chức năng :
Cung cấp giao diện cho người dùng
Định dạng yêu cầu cung cấp dữ liệu
Hiển thị dữ liệu nó nhận lại từ máy Server
Trong môi trường Client/Server, máy Server không chứa phần mềm giaodiện người dùng Máy Client có nhiệm vụ trình bày dữ liệu theo hình thức hữu ích.Chẳng hạn với giao diện người dùng và lập báo biểu
Chương trình ứng dụng trên máy Server tiếp nhận những chỉ thị từ ngườidùng, chuẩn bị chúng cho máy Server, rồi gởi một yêu cầu cung cấp thông tin cụthể đến máy Server Máy Server xử lý yêu cầu, định vị thông tin tích hợp, rồi gởithông tin tìm được qua mạng đến máy Client Máy Client sau đó sẽ “đẩy” thôngtin ra giao diện để hiển thị thông tin trước người dùng
Máy phục vụ :
Máy Server trong môi trường Client/Server chuyên dùng để lưu trữ và quảnlý dữ liệu Đây là nơi xảy ra hầu hết hoạt động thực của cơ sở dữ liệu Máy Servertiếp nhận các yêu cầu có cấu trúc từ phía máy Client, xử lý chúng , rồi gởi trảthông tin được yêu cầu và trở lại máy Client qua mạng
1.4 PERSONAL WEB SERVER LÀ GÌ ?
Personal Web Server (PWS) là một Web server chạy trong môi trườngWindows 9x trên máy PC Personal Web Server truyền tải thông tin bằng cách
Máy Server
Máy Client
Trang 5dùng Hypertext Transfer Protocol (HTTP), Personal Web Server cũng có thể dùngphương thức FTP Nó có thể chạy trên Windows Workstation.
Personal Web Server làm việc như thế nào ?
Web là một hệ thống yêu cầu (Request) và đáp ứng (Response) Webbrowser yêu cầu thông tin bằng cách gửi một URL tới Web server, Web server đápứng lại bằng cách trả lại một trang HTML cho Web browser
HTML có thể là một trang Web tĩnh được lưu sẵn ở trên Web server hoặc cóthể là một trang Web động mà server tạo ra khi đáp ứng yêu cầu của người sửdụng hoặc là một trang ở thư mục nào đó trên server
Web Browser URL Request
Mỗi trang Web trên Intranet hoặc Internet có một URL duy nhất Webbrowser yêu cầu một trang bằng cách gửi một URL tới một Web server Webserver sử dụng thông tin trong URL để xác định và cho hiển thị trang Web theo yêucầu của Browser
Cú pháp URL là một chuỗi văn bản tuần tự gồm có : Protocol, DomainName, và đường dẫn (Path) tới thông tin yêu cầu Protocol là chuẩn truyền thôngdùng để truyền tải thông tin như là : HTTP, FTP và Gopher Domain Name chính làDomain Name System (DNS) của máy tính chứa thông tin Path là đường dẫn tớithông tin yêu cầu trên máy tính
Ví dụ:
Trang 6Https://
(secure
HTTP)
Www.company.com /catalog/orders.htm
Một URL cũng có thể chứa thông tin mà Web server cần phải xử lý trước khitrả lại một trang, dữ liệu trong URL được gắn thêm vào cuối đường dẫn Webserver gửi dữ liệu này tới một chương trìng hay một Scirpt để xử lý và trả lại kếtquả trong một trang web
Ví dụ:
Internet Database
Common Gateway Interface
Web Server Response
Web server đáp ứng yêu cầu của Web browser bằng cách trả lại một trangHTML Trang trả lại có thể là trang HTML tĩnh, trang HTML động hoặc là trangtrong danh sách thư mục
Trang HTML tĩnh (Static Page)
Một trang HTML tĩnh là trang đã được chuẩn bị sẵn cho các yêu cầu nhấtđịnh và được đặt sẵn trên Web server Người sử dụng yêu cầu một trang HTML
Trang 7tĩnh bằng cách gõ trực tiếp URL hoặc là Click vào Hyperlink của URL nào đó,URL được gửi tới server Server đáp ứng bằng cách trả lại trang HTML tĩnh.
Trang động (Dynamic Page)
Các trang động được tạo ra trong quá trình đáp ứng cho yêu cầu của người sửdụng Một Web browser thu thập thông tin bằng cách thực hiện một trang có cácTextbox, Menu, Checkbox cho phép người sử dụng điền vào hoặc lựa chọn Khingười sử dụng click vào một nút (button) trên Form và khi submit dữ liệu từ Formđược gửi tới Web server Server đưa dữ liệu này tới một Script hoặc một trình ứngdụng để xử lý Sau đó server gửi lại kết quả cho browser bằng một trang HTML
Ưu, nhược điểm của PWS
Cung cấp một môi trường phát triển tiện lợi và không đắt, không cần thêmphần cứng mạnh Một bản sao của Web Server có thể lưu trên ổ cứng cục bộ vàmọi thao tác sẽ thực hiện trên đó mà không ảnh hưởng đến trang Web thật trongthời gian thiết kế Việc lưu lại và xem site trên ổ đĩa cục bộ cho phép người lậptrình kiểm tra quá trình làm việc mà không phải lặp đi lặp lại việc truyền tập tin.Cuối giai đoạn phát triển, tất cả các mã chương trình sẽ được truyền bằng FTP hayHTTP, công việc truyền tập tin một lần này ít tốn kém về thời gian cũng như tàinguyên hơn các thao tác truyền tập tin nhiều lần
Tuy nhiên PWS không có độ tin cậy cao như mô hình NT Server/IIS,Win2000/IIS WinXP/IIS
Trang 81.5 INTERNET INFORMATION SERVER LÀ GÌ ?
IIS là Web Server chạy trên WinNT, Win 2000 và Win XP có thể quản lý các site thương mại
IIS hoạt động tương tự như PWS nhưng dưới quy mô lớn và có độ tin cậy hơn
Trang 102.2 CÁCH VIẾT CÁC FILE ASP SCRIPT
Một file ASP có tên mở rộng asp và là một file text như những file HTMLkhác Một file asp có thể chứa bất cứ sự kết hợp nào sau đây:
Gán trị cho biến
Yêu cầu Webserver gửi thông tin đến Browser gọi là Output expression(ví dụ: <%=GCM (“tham số”)%>)
Kết hợp các lệnh script thành các thủ tục hay hàm
Việc thi hành một script là quá trình gửi chuỗi các lệnh tới Scripting Engine,tại đây ASP sẽ thông dịch các lệnh này và thi hành nó Script được viết bằng mộtngôn ngữ với các luật được đặc tả nào đó, nếu ta muốn sử dụng một scriptinglanguage nào thì trên server phải chạy Scripting Engine cho ngôn ngữ đó Ví dụ,VBScript là ngôn ngữ script mặc định cho Active Server Pages, vì vậy scriptingengine cho VBScript được cài đặt thường trú trên server ASP cũng cung cấp sẵnScripting Engine cho JScript
Cú pháp của ASP
ASP chỉ cung cấp một môi trường để xử lý các script mà ta chèn vào trongcác file asp chứ ASP không phải là một ngôn ngữ script Tuy nhiên, ASP qui địnhviệc chèn các script phải tuân theo cú pháp nhất định của ASP như sau:
2.2.1 Delimiter (dấu ngăn cách)
Trang 11Trong trang ASP ta sử dụng các dấu <% và %> để ngăn cách phần văn bảnHTML với phần script, bất cứ một phát biểu script nào cũng đều phải nằm giữa 2dấu ngăn cách <% và %>
Ví dụ:
<%sport=“climbing”%> sẽ gán chuỗi “climbing” cho biến sport Hoặc <
%=sport%> để xuất giá trị của biến sport ra Browser (biểu thức này được gọi làOutput Expression)
2.2.2 Statement (câu lệnh)
Một câu lệnh, trong VBScript hay trong ngôn ngữ Script khác là một cấu trúcdùng để thực hiện một thao tác, phát biểu phải được khai báo hoặc định nghĩa trongngôn ngữ script mà ta sử dụng
Ví dụ: Đoạn script sau dùng câu lệnh If … Then … Else của VBScript.
<% If (Time >=#12:00:00 AM#) then
greeting= “Good Morning”
2.2.3 Kết hợp HTML trong các câu lệnh
Chúng ta có thể chèn HTML text giữa các phát biểu của script
Ví dụ:
<FONT Color= “Green”>
<% If (Time >=#12:00:00 AM#) then%>
Good Morning!
<% Else %>
Hello !
<%End If %>
Trang 122.2.4 Script tag và việc tạo thủ tục với ngôn ngữ Script
Các thủ tục phải được đặt bên trong tag <SCRIPT> và </SCRIPT>, và chophép ta sử dụng ngôn ngữ script khác với ngôn ngữ mặc định đã cài đặt trong môitrường ASP (là VBScript)
<! #include virtual | file = “filename” !>
Trong đó file được include phải có phần mở rộng là inc, filename bao gồmcả đường dẫn và tên file Tham số virtual chỉ định đường dẫn bắt đầu bằng mộtVirtual Directory Tham số file chỉ định đường dẫn bắt đầu với tên thư mục chứafilename cần include
Trang 132.3 CÁC BUILT-IN OBJECT CỦA ASP
ASP cung cấp sẵn 5 đối tượng (object) khi sử dụng không cần phải tạo ra cácinstance cho chúng, mỗi đối tượng thực hiện một số chức năng riêng khác nhau.Các đối tượng này được gọi là các Built-in-Object, bao gồm:
Request: lấy thông tin từ một user
Response: gửi thông tin tới một user
Server: điều khiển môi trường hoạt động của ASP
Session: lưu giữ thông tin về 1 session của user
Application: chia sẻ thông tin giữa các user trong cùng một ứng dụng
Cú pháp của các đối tượng
Cú pháp của các đối tượng không phụ thuộc vào scripting language màngười lập trình sử dụng
Để truy xuất thông tin của một đối tượng ta dùng các phương thức (method)và các thuộc tính (property)
Sử dụng các Method
Một method là một procedure hoạt động trên một đối tượng nào đó Cú pháptổng quát của method là:
Object.Method [parameters]
parameter là các thông số của method
Sử dụng các Property
Một property là một tính chất được đặt tên của một đối tượng Chúng địnhnghĩa các tính chất của đối tượng như kích thước, màu, vị trí trên màn hình hay thểhiện các trạng thái của đối tượng như được phép (enable) hay không được phép(disable) Cú pháp tổng quát của property là:
Object.Property [parameters]
parameter là các thông số của Property
Parameter thường là các biến, dữ liệu, chuỗi ký tự, hoặc là một URL.
Trang 142.3.1 Request object
Request Object lấy các giá trị mà client browser gởi lên server thông quamột HTTP request Đây là cách mà các ứng dụng ASP lấy được thông tin gửi tới từuser, ví dụ: khi user Submit thông tin từ một FORM
Request Object cho phép truy xuất tới bất kỳ thông tin nào do user gởi tớibằng giao thức HTTP như:
1 Các thông tin chuẩn nằm trong các biến Server (variable server)
2 Các tham số được gửi tới bằng phương thức POST
3 Các thông tin được gửi tới bằng phương thức GET
4 Các cookies (là các thông tin của user được gửi kèm theo) tới từ Browser
5 Các Client Certificates
Request Object có 5 collection sau:
QueryString Nhận giá trị của các biến trong HTML querystring,
đó là giá trị được gởi lên theo sau dấu chấm hỏi (?)trong HTML request
POST method
Cookies Cho phép nhận những giá trị của cookies trong một
HTML request
ServerVariable Nhận các giá trị của các biến môi trường
ClientCertificate Nhận certificate fields từ request của Web browser
Cú pháp tổng quát khi sử dụng Request object là:
Request.CollectionName(variable)
Variable là tên biến trong Collection muốn truy xuất thông tin Cũng có thể
sử dụng cú pháp:
Request(variable)
Khi đó thứ tự tìm kiếm sẽ tuân theo danh sách các collection trên và khi gặpbiến đầu tiên trùng tên thì trả về giá trị của biến đó Vì thế nếu có nhiều hơn một
Trang 15biến với cùng một tên trong các collection khác nhau thì nên sử dụng dạng cú pháptổng quát Sau đây là một số ứng dụng của đối tượng Request:
Lấy thông tin từ FORM
HTML Form là cách thức thông thường để trao đổi thông tin giữa Web Server vàuser HTML Form cung cấp nhiều cách nhập thông tin của user như: text box, radiobutton, check box, submit, reset, password, … và hai phương thức gửi thông tin là POSThoặc GET
Ứng dụng ASP có thể sử dụng Form để tạo ra sự liên lạc dữ liệu giữa cáctrang theo một trong ba cách:
File htm chứa các form và gửi (submit) giá trị của nó tới một file asp
File asp có thể tạo Form và gửi giá trị tới một file asp khác
File asp có thể tạo Form và gửi thông tin tới ngay chính nó
Khi lấy thông tin từ Form, đối tượng Request có thể lấy các loại thông tinkhác nhau, bằng cách:
Sử dụng QueryString
QueryString collection chứa toàn bộ thông tin được gửi tới từ Form bằngphương thức GET Các giá trị gởi từ Form chứa trong một chuỗi query (querystring) và được add vào URL (bắt đầu từ dấu chấm hỏi (?) trở về sau là phần querystring được thêm vào) Điều này có thể thấy rõ khi quan sát hộp Address củaBrowser
Ví dụ:
<FORM NAME= “frmDetails” ACTION=“GetDetails.asp”
METHOD=GET>
Name: <INPUT TYPE=TEXT NAME=“txtName”>
Age: <INPUT TYPE=TEXT NAME=“txtAddress”>
<INPUT TYPE=SUBMIT>
</FORM>
Khi user nhập giá trị Minh và 30 vào hai hộp Name và Age sau đó nhấnSubmit thì hộp Address của browser sẽ có dạng như sau:
Trang 16txtName=Minh&txtAge=30
Hạn chế của phương thức GET : Chiều dài tối đa của URL là 1000 ký tự,như vậy nếu gởi một loạt thông tin từ form, thông tin sẽ bị cắt bớt
Sử dụng Form collection
Thay vì add thông tin gửi đi từ Form vào URL như một querystring, mộtphương thức khác là POST, đặt thông tin gửi đi vào bên trong HTTP header
Ví dụ:
<FORM NAME= “frmDetails” ACTION=“GetDetails.asp”
METHOD=POST>
Name: <INPUT TYPE=TEXT NAME=“txtName”>
Age: <INPUT TYPE=TEXT NAME=“txtAddress”>
Gửi thông tin trong cùng một file asp
ASP cho phép một file asp có chứa Form, khi user điền các giá trị vào Formrồi gửi (Submit) thì chính file asp đó sẽ nhận các thông tin này và xử lý
Ví dụ: file examp.asp có nội dung như sau:
<HTML>
<BODY>
<%
If IsEmpty(Request(“Email”)) Then
Msg= “Please enter your email address”
Else If InStr(Request(“Email”), “@”)=0 Then
Trang 17Msg= “Please enter an email address in the form servername@location”Else
Msg= “This script could process the valid email address now”
<FORM name=”form1” Action=”examp.asp” method=POST>
Name: <Input type=TEXT Name=”txtName”>
</FORM>
Trang 18và đoạn code sau trong trang examp2.asp dùng để nhận các thông tin sẽ submit từform1.
1 Response.Write : Gửi thông tin trực tiếp tới user
2 Response.Redirect : Gửi thông tin trực tiếp tới user ở một URL khác với URL
đã yêu cầu
3 Response.ContentType: Thay đổi kiểu của nội dung cần gửi.
4 Response.Cookies : Thiết lập các giá trị cookies.
5 Response.Buffer : Đệm thông tin xuất.
Gửi văn bản tới user :
Trang 19Sử dụng Cookies Collection
Một cookies được coi như một dấu hiệu đi kèm theo user trong quá trình traođổi thông tin giữa Web client và Web server Các script của ASP có thể dùngResponse để lấy hoặc thiết lập giá trị của cookies bằng cách sử dụng cookiescolletion theo cú pháp:
Response.Cookies(cookie)[(key)][.attribute]
trong đó cookie là tên của cookie key là thông số tùy chọn Nếu key được đặc tảthì cookie là từ điển và key sẽ được thiết lập giá trị, attribute là các thuộc tính củacookie đó
Bufferring Response
Thuộc tính Buffer chỉ định rằng trang xuất (page out) có được đệm lại haykhông Khi một trang bị đệm lại thì server sẽ không gửi đáp ứng nào tới client chođến khi tất cả các server script trong trang hiện hành đã được xử lý, hoặc là chođến khi phương thức Flush hoặc End được gọi
Thuộc tính Buffer mặc định cho tất cả trang ASP là True trong ASP 3.0, trong khi ởcác phiên bản trước mặc định là False Để thiết lập trị Buffer gọi:
<% Response.Buffer=True %>
2.3.3 Session object
Đối tượng Session dùng để lưu trữ các thông tin của một user-session Cácgiá trị lưu trữ trong session sẽ không bị loại bỏ đi khi user chuyển từ trang này sangtrang khác trong một ứng dụng và có thể nhìn thấy được bởi tất cả các trang ASPtrong ứng dụng, chúng chỉ bị loại bỏ khi user session-end Web server tự động tạo
ra Session object khi một trang web trong ứng dụng được yêu cầu bởi một user màuser này chưa có một session Server sẽ tự động hủy bỏ user-session khi nó hết hạnhoặc bị bỏ (abandon)
Cú pháp:
Session.Properties | Method
Properties
Trang 20 SessionID trả về số định danh session cho user Mỗi session sẽ được
server cho một số định danh duy nhất khi nó được tạo ra
Timeout chỉ thời gian sống của session object, nếu user không refresh hay
request một trang trong khoảng thời gian qui định, session sẽ kếtthúc
Session_OnEnd xảy ra khi session end, hoặc khi không có request nào
trong khoảng timeout (mặc nhiên là 20 phút) Các thông tin lưu giữ trong Session được giữ nguyên trong suốt thời giansession tồn tại và có giá trị trong cả tầm vực của session
Methods:
Lock: Ngăn chặn các user khác bổ sung property của Application object.
Method này sẽ khóa các client khác không cho thay đổi các biến được lưu trữ trongapplication object, đảm bảo tại một thời điểm chỉ có một user được phép thay đổivà truy xuất các biến của object này
Unlock: Cho phép các user khác bổ sung các biến của Application object.
Trang 21Application_OnStart Event-procedure được thi hành trước khi một
session mới được tạo ra
Application_OnEnd Event-procedure được thi hành khi thoát khỏi
application, ngay sau Session_OnEnd event
2.3.5 Server object
Property
ScriptTimeOut khoảng thời gian chạy của một script
Methods
CreateObject tạo một instance cho một server component
Cú pháp: Server.CreateObject(ProgID), trong
đó ProgID là tên của đối tượng cần tạo
HTMLEncode áp dụng sự mã hóa HTML lên một string được chỉ
định
MapthPath ánh xạ một đường dẫn tương đối hoặc virtual tới
một thư mục vật lý trên server
URLEncode mã hóa một string thành dạng URL
2.4 SỬ DỤNG CÁC COMPONENT CỦA ASP
Ngoài các Built-in object, ASP còn cung cấp sẵn một số ActiveX Servercomponent, được thiết kế để chạy trên các Web server như là một phần của cácứng dụng Web Mỗi một server component là một thư viện các Class (hay Object)được thiết kế ở dạng Automation Server, thực hiện một nhóm công việc chung nhấtcho một thao tác nào, ví dụ như việc truy xuất cơ sở dữ liệu, truy xuất file… nhờ đó
ta không phải tạo lại các chức năng này nữa Tuy nhiên, ASP vẫn cho phép ngườilập trình có thể tạo riêng server component của mình và add vào ứng dụng Web
Các component được cài sẵn trong Active Server Pages gồm:
Adrotator
Trang 22 Browser Capabilities
Database Access
Content Linking
File Access
Tạo các instance của các component
Dùng phương thức CreateObject của đối tượng Sever, cú pháp như sau:
Database Access Component
Database Access component còn gọi là thư viện ADO (ActiveX DataObject), các object của ADO cung cấp cơ chế tạo kết nối (connection) với hầu hếtcác kiểu database, cũng như việc truy xuất, cập nhật các database này
ADO Interface
Các đối tượng trong ADO giao tiếp với database thông qua ODBC (OpenDatabase Connectivity), chúng có thể được sử dụng với bất kỳ loại database nàonếu như có ODBC driver hỗ trợ ASP cài đặt sẵn hầu hết các driver thông dụngnhư: Foxpro, Access, SQL server, Oracle
Active Server Pages
ActiveX Database Component
ActiveX Data Objects ODBC
Driver
Data Provider InterfaceData Source
Trang 23Với Data Provider đại diện cho các phần mềm driver, nó cho phép ta giao tiếp với các loại dữ liệu khác nhau.
Các Object trong ADO
Gồm: Connection, RecordSet và Command Sử dụng Connection ta có thểthiết lập sự liên kết với cơ sở dữ liệu, thông qua đó ta có thể lấy ra các record hoặccập nhật một record bằng cách sử dụng Command object Kết quả thực hiện cácquery trên database sẽ được lưu vào đối tượng RecordSet, trên đối tượng này ta cóthể duyệt và lấy ra một hay nhiều record
Trang 241 Open method : được sử dụng để mở một liên kết với Database Ngay sau
khi tạo instance cho Connection object, ta có thể mở một kết nối tới Data Sourceđể truy xuất dữ liệu, cú pháp như sau:
Connection.Open ConnectionString [User] [Password]
trong đó ConnectionString là chuỗi định nghĩa tên của Data Source (DSN), tên này
do ODBC tạo ra [User] và[Password] là tên User và Password được database cho
như SQL
tạo một Recordset từ đó
trong Data source
Thông thường các giá trị trên được gán sẵn vào các danh hiệu hằng và đượcđặt trong file include có tên adovbs.inc
3 Close method: đóng các kết nối đã mở.
Trang 25CreateParameter: dùng để tạo một đối tượng Parameter
Execute dùng để thực thi câu lệnh được đặc tả trong thuộc tính
CommandText
Properties
ActiveConnection Chỉ định đối tượng connection nào được sử dụng trong đối
tượng Command
CommandText Chỉ định câu lệnh cần thực hiện trên cơ sở dữ liệu
CommandTimeout Xác định thời gian thực thi lệnh, giá trị thời gian này
AddNew Tạo một record trong Recordset
Update Cập nhật các thay đổi vào record hiện hành
Delete Xóa record hiện hành
MoveFirst Đến record đầu tiên
MoveNext Đến record kế tiếp
Trang 26MovePrevious Trở về record trước đó
MoveLast Đến record cuối cùng
Requery Thực hiện lại query tạo ra recordset
GetRow Chứa các record vào một array
Close Đóng lại đối tượng Recordset
Properties
AbsolutePosition Số thứ tự vị trí (vật lý) của record hiện tại
CursorType Kiểu của con trỏ được sử dụng trong recordset
RecordCount Trả về tổng số record trong recordset
hoặc
Recordset_name=CommandObject.Execute(CommandText,Recordaffected,
Options)
Ta cũng có thể dùng phương thức Open của Recordset:
Recordset_name.Open(Source,ActiveConnection,CursorType, LockType, Options)
Trong đó:
- Source là một CommandObject hay một lệnh SQL hoặc là Stored Procedure.
- ActiveConnection là tên của Connection đã được mở kết nối với database.
Trang 27- CursorType là kiểu con trỏ sử dụng với recordset, thông số này có kiểu số và
được gán trị qua các tên hằng tương ứng như sau:
adOpenForwardOnly = 0 là giá trị mặc định, chỉ cho phép duyệt các record
theo một chiều từ trên đầu đến cuối, không cho phép cập nhật hay xóa bỏ cácrecord trong đó
adOpenKeyset = 1 Chế độ này cho phép cập nhật các record, nhưng cấm truy
xuất đến record của user khác thêm vào recordset
adOpenDymamic = 2 Chế độ này cho phép tất cả thao tác trên như: thêm vào,
loại bỏ, cập nhật và duyệt theo tất cả chiều lên xuống tùy ý
adOpenStatic = 3 Gần giống như chế độ OpenForwardOnly.
LockType là kiểu Locking sử dụng khi mở Recordset
adLockreadOnly = 1 không thể thay đổi dữ liệu khi mở với khóa này
adLockpessimistic = 2 cho phép thay đổi dữ liệu trên Recordset, sự thay đổi
này sẽ có tác dụng ngay lập tức trên data source
adLockOptimistic = 3 locking record hiện hành chỉ khi ta gọi phương thức
Trang 282.5.ƯU ĐIỂM VÀ NHƯỢC ĐIỂM CỦA ASP
Ưu điểm :
ASP bổ sung cho các công nghệ đã có từ trước như CGI (Common GatewayInterface), Giúp người dùng xây dụng các ứng dụng web với những tính năngsinh động Tuy nhiên, khác với CGI, các trang ASP không cần phải hợp dịch
Dễ dàng tương thích với các công nghệ của MicroSoft ASP sử dụng ActiveXData Object (ADO) để thao tác với cơ sở dữ liệu hết sức tiện lợi
Với những gì ASP cung cấp, các nhà phát triển ứng dụng web dễ dàng tiếp cậncông nghệ này và nhanh chóng tạo ra các sản phẩm có giá trị Điều này hết sứccó ý nghĩa trong điều kiện phát triển như vũ bảo của tin học ngày nay Nó gópphần tạo nên một đội ngũ lập trình web lớn mạnh
ASP có tính năng mở Nó cho phép các nhà lập trình xây dựng các componentvà đăng ký sử dụng dễ dàng Hay nói cách khác ASP có tính năngCOM(Component Object Model)
ASP không được sự hổ trợ nhiều từ các hãng thứ ba
Các ứng dụng ASP chạy chậm hơn công nghệ Java Servlet
Tính bảo mật thấp Không giống như CGI hay Java servlet, các mã ASP đều cóthể đọc được nếu người dùng có quyền truy cập vào web server Có lẽ đây là lý
do quan trọng nhất để người dùng không chọn công nghệ ASP
Trang 29CHƯƠNG 3 : VBSCRIPT3.1 VBSCRIPT LÀ GÌ ?
VBScript là một thành phần của ngôn ngữ lập trình Visual Basic VBScriptcho phép thêm các Active Script vào các trang Web Microsoft Internet Explorer3.0 có thể chạy được các chương trình VBScript chèn vào các trang HTML VớiVBScript ta có thể viết ra các form dữ liệu hay các chương trình Game chạy trênWeb
Sự phát triển của VBScript :
VBScript khởi đầu phát triển cho môi trường Client side VBScript 1.0 đượcđưa ra như là một bộ phận của Internet Explorer 2.0 và VBScript cung cấp phần lớncác chức năng lập trình của ngôn ngữ Visual Basic Sự khác nhau lớn nhất củaVBScript và Visual Basic là VBScript ngăn chặn truy xuất file Bởi vì mục tiêuchính của việc thiết kế VBScript là cung cấp một ngôn ngữ Script mềm dẽo nhưngngăn ngừa các mục đích phá hoại từ phía Browser Cùng với sự ra mắt của InternetInformation Server 3.0 và Active Server Pages, VBScript 2.0 bây giờ có thể chạytrên Web Server VBScript 2.0 mở rộng khả năng lập trình so với phiên bản đầutiên mà đặt trưng là cho phép tự động nối kết tới ActiveX từ Web Server Sự nốinày cho phép khả năng truy xuất tới Cơ sở dữ liệu trên các Server và chạy các ứngdụng trên Server
3.2 KIỂU DỮ LIỆU CỦA VBSCRIPT
VBScript có một kiểu dữ liệu duy nhất được gọi là Variant Variant là mộtkiểu dữ liệu đặc biệt có thể chứa các kiểu thông tin khác nhau tùy thuộc vào cáchsử dụng của nó Variant cũng là kiểu dữ liệu duy nhất được trả về bởi tất cả cáchàm trong VBScript
Ví dụ một Variant có thể chứa dữ liệu là số hoặc chuỗi, nó được coi là sốhoặc là chuỗi tùy thuộc vào ngữ cảnh sử dụng của nó
Variant có thể chứa các kiểu dữ liệu Subtype như trong bảng sau :
Trang 30Biến là một vị trí xác định trong bộ nhớ máy tính có giá trị thay đổi trong lúcScript đang chạy Ta có thể tham khảo đến giá trị của biến hoặc thay đổi giá trị củanó bằng cách dùng tên của biến Trong VBScript biến luôn luôn là một kiểu dữliệu cơ bản đó là Variant.
Khai báo biến :
Khai báo biến bằng cách dùng từ khóa Dim, Public và Private Ví dụ :
Dim MyVar
Dim Top, Bottom, Left, Right
Biến có thể được khai báo ở bất kỳ nơi nào trong Script
Qui tắc đặt tên biến :
- Biến phải bắt đầu bằng kí tự chữ
- Không chứa các kí tự đặc biệt
- Không quá 255 kí tự
- Không được trùng tên trong phạm vi khai báo
Phạm vi của biến :
Khi ta khai báo một biến trong Procedure thì chỉ trong Procedure mới có thểtruy xuất hoặc thay đổi giá trị của nó, lúc đó nó được gọi là biến cục bộ (CấpProcedure ) Đôi khi ta cần sử dụng biến ở phạm vi lớn hơn ví dụ như khi sử dụng ởtất cả Procedure trong Script thì ta khai báo ở bên ngoài Procedure (Cấp Script)
Thời gian sống của biến :
- Cấp Script : Bắt đầu từ lúc khai báo đến lúc kết thúc Script
- Cấp Procedure : Bắt đầu từ lúc khai báo cho đến lúc kết thúc Procedure
Gán trị cho biến :
Ví dụ: Myvar = 10
Biến mảng (Array) :
Ví dụ: Dim A(10)
A(0) = 1
Trang 31đa từ 3 đến 4 chiều.
Mảng nhiều chiều được khai báo như sau :
Tạo hằng : Tạo hằng trong VBScript bằng cách dùng từ khóa Const và sau
đó gán giá trị cho nó
Ví dụ: Const MyString
MyString = “This is my string”
Trang 32VBScript có đầy đủ các loại toán tử và có độ ưu tiên tuần tự theo các nhómsau : Các toán tử toán học, các toán tử so sánh, toán tử nối chuỗi, và các toán tửLogic.
- Các toán tử trong ngoặc ưu tiên hơn bên ngoài
- Nếu hai toán tử cùng độ ưu tiên như nhau ví dụ như toán tử cộng (+) và trừ(-) hay nhân (*) và chia (/) thì theo thứ tự ưu tiên từ trái sang phải
Bảng các toán tử :
Diễn giãi Kí
hiệu Diễn giãi
Kí hiệu Diễn giãi
Kí hiệu
3.6 CÁC CẤU TRÚC ĐIỀU KHIỂN CHƯƠNG TRÌNH
3.6.1 Cấu trúc rẽ nhánh
Nếu ta muốn chạy một lệnh đơn khi điều kiện If là đúng thì ta chỉ sử dụng một lệnh If then
Ta cũng có thể dùng If .then .Else để xác định thực thi một trong 2 khối lệnh Một khối thực thi khi điều kiện If là True Khối còn lại thực thi khi điều kiện
If là False
3.6.2 Cấu trúc lặp
Sử dụng từ khóa While :
Ví dụ:
Trang 33Loop While myNum > 10
Trang 34counter = 0
myNum = 1
Do
myNum = myNum + 1 counter = counter + 1
Loop Until myNum = 10
If myNum < 10 Then Exit Do
Trang 35 Từ khóa Step : Sau mỗi lần lặp, biến đếm được tăng thêm một giá trị bằng với step
Một Sub Procedure là một loạt các lệnh VBScript được đặt trong hai từ khóa
Sub và End Sub Sub Procedure thực thi các lệnh bên trong nó nhưng không trả lại
giá trị Sub có các đối số là hằng, biến hoặc là biểu thức được truyền vào khi ta thực hiện lệnh gọi Sub Nếu Sub không có đối số thì sau tên Sub phải kèm theo cặp
dấu ngoặc rỗng
3.7.2 Function Procedure :
Function là một loạt các lệnh VBScript được đặt trong hai từ khóa Function và
End Function Function có thể trả lại giá trị Function có các đối số là hằng, biến
hoặc là biểu thức được truyền vào khi ta thực hiện lệnh gọi Function Nếu
Function không có đối số thì sau tên Function phải kèm theo cặp dấu ngoặc rỗng.
Một Function trả lại giá trị bằng cách gán giá trị cho tên của nó Kiểu giá trị trả lại của Function luôn luôn là Variant.
Trang 374.2 ĐỊNH DẠNG VĂN BẢN
Làm cho đậm, nghiêng, hay typewriter (chữ đánh máy) Làm cho gach dưới
và gạch ngang
<b>…</b> làm cho đậm
<i>…</i> làm cho nghiên
<tt>…</tt> làm chữ đánh máy
<u>…</u> làm cho gạch dưới
<strike>…</strike>
Ký tự Đặc biệt
Mã cho ký tự đặc biệt và các dấu phụ
Trang 38 Chỉnh lề ở giữa
Chỉnh tất cả vào giữa trang
Trang 39</table>
4.4 SIÊU LIÊN KẾT
Liên kết Siêu văn bản Cục bộ
Liên kết đến tài liệu khác trong cùng directory/folder
Uniform Resource Locator
Địa chỉ các nguồn trên Internet: URL
Liên kết Siêu văn bản của Internet
Liên kết đến một Site Internet khác, được chỉ định bởi URL
<a href=”URL”>
hypertext</a>
Liên kết Siêu Hình ảnh của Internet
Hình ảnh Inline hoạt động như một siêu liên kết đến site được chỉ định bởi URL Thêm thuộc tính border=0 để hủy bỏ hộp bao quanh hình ảnh
<a href=”url”>
<img src=”file.gif”
Trang 40border=0></a>