Siêu văn bản HyperText có nghĩa là có thể tạo ra một liên kết trong trang Web đa ngời sử dụng đến một trang Web khác hoặc một nơi nào đó trên Internet, tức là thông tin trên Web cho phép
Trang 1kho¸ luËn tèt nghiÖp
§Ò tµi:
qu¶n lý Thi tr¾c nghiÖm trªn m¹ng
Gi¸o viªn híng dÉn:
Th¹c sü Vò ChÝ Cêng
Sinh viªn thùc hiÖn:
Hoµng Trung S¬n - 40A CNTT
Trang 2Lời nói đầu
Trong những năm gần đây, mạng máy tính đã trở nên rất quen thuộc đối với chúng ta Nó thực sự trở thành một công cụ, một phơng tiện truyền thông hữu ích giúp con ngời có thể trao đổi, khai thác thông tin một cách tiện lợi nhất Máy tính đã hỗ trợ con ngời rất nhiều trong công việc, trong đời sống và mạng máy tính trở thành phơng tiện kết nối mọi ngời lại với nhau Rất nhiều công ty, xí nghiệp, cơ quan, trờng học đã có trang Web riêng của mình Có thể nói rằng khi
đi vào Internet chúng ta có cảm giác nh đi vào một thế giới lung linh huyền ảo, mỗi một trang Web đều thể hiện những tính đặc trng của riêng mình Từ dáng
vẻ, màu sắc, âm thanh, hình ảnh cho đến nội dung đều mang một vẻ riêng của mỗi cơ quan, đơn vị,
Đối với ngành giáo dục nớc ta hiện nay cũng đã có nhiều trờng Đại học, Cao đẳng, đã có trang Web riêng của mình Tuy nhiên, hầu hết các Web site này đều là Web thông tin mà cha mang tính chuyên môn (các trang phục vụ cho học tập, thi cử, ) Hơn nữa việc thiết kế các trang Web kiểu này đang còn hạn chế do việc tìm hiểu các phần mềm và ngôn ngữ thiết kế Web cha thực sự trở thành vấn đề đợc nhiều ngời quan tâm Trớc tình hình đó, với một mong muốn góp phần vào việc đổi mới phơng pháp dạy học, phơng pháp thi cử hiện nay chúng tôi đã lựa chọn đề tài “Quản lý thi trắc nghiệm trên mạng ” làm đề tài khoá luận tốt nghiệp cho mình
Đề tài này bao gồm 3 chơng với cấu trúc nh sau:
Phần Mở đầu: Giới thiệu chung về đề tài, lí do chọn đề tài, lịch sử
nghiên cứu,
Chơng I Tìm hiểu ngôn ngữ: – Giới thiệu về HTML và ASP
Chơng II Bài toán: – Nêu bài toán thực tế
Chơng III Xây dựng Web site: – Phân tích và thiết kế hệ thống Giới thiệu một số trang cơ bản của Web site và giao diện của một số trang cơ bản
Trang 3Phần Kết luận.
Để hoàn thành đề tài, ngoài sự cố gắng của bản thân tôi đã nhận đợc sự ớng dẫn, chỉ bảo hết sức tận tình của thầy giáo thạc sỹ Vũ Chí Cờng, sự ủng hộ nhiệt tình của các thầy giáo cô giáo và bạn bè Với những điều đó đề tài đã đạt đ-
h-ợc những mục đích nhất định Nhân đây cho phép tôi gửi lời cảm ơn chân thành tới thầy giáo, thạc sĩ Vũ Chí Cờng, ngời đã trực tiếp huớng dẫn tôi hoàn thành đề tài này Cũng nhân đây cho tôi đợc gửi lời cảm ơn đến tất cả các thầy giáo, cô giáo và bạn bè đã ủng hộ giúp đỡ tôi trong suốt quá trình hoàn thành đề tài này
Vinh, tháng 6 năm 2003
Hoàng Trung Sơn
Trang 4mở đầu
I Lý do chọn đề tài.
Trong những năm gần đây, CNTT đã thực sự phát triển và đem lại những nguồn lợi thiết thực cho sự phát triển kinh tế, xã hội, cho đời sống tinh thần, cho mọi ngời Việc ứng dụng CNTT đã và đang là vấn đề bức thiết ở nớc ta hiện nay Rất nhiều ngành kinh tế, các tổ chức xã hội, các đơn vị, trờng học đã đa tin học vào một cách rộng rãi Tuy nhiên, đối với ngành giáo dục, là một trong những ngành có tính quyết định sự sống còn của đất nớc thì tin học lại cha đợc
sử dụng nhiều và cha mang lại hiệu quả đúng với những gì nó cần phải có Hầu
nh CNTT mới chỉ dừng lại ở việc hỗ trợ cho các công tác văn phòng, quản lí cán
bộ, điểm mà cha phục vụ nhiều cho công tác thi cử hay thậm chí là tổ chức thi thông qua mạng máy tính Trên thực tế có khá nhiều hình thức thi mà các trờng
Đại học, Cao đẳng hay phổ thông vẫn sử dụng cho việc thi hết môn, thi học kì
nh thi viết, thi trắc nghiệm, thi vấn đáp, Trong đó thi trắc nghiệm là một hình thức có thể cài đặt phần mềm để thay thế cho việc thi bình thờng Nếu sử dụng một mạng cục bộ hoặc thậm chí là đẩy lên Internet thì việc sử dụng một phần mềm thi trắc nghiệm sẽ đem lại nhiều tác dụng cho việc tổ chức thi cử Trong vài năm trở lại đây ở một số trờng Đại học và cao đẳng đã xuất hiện một số phần mềm chạy trên máy đơn dùng cho thi trắc nghiệm Đồng thời cũng có một số các trang Web trắc nghiệm đợc đẩy lên Internet Tuy nhiên, các trang này đang còn nằm ở dạng Web tĩnh và chủ yếu là dùng cho giải trí, trắc nghiệm tâm lí, mà cha có trang nào phục vụ cho thi cử thực sự
Với tình hình thực tế nh vậy, chúng tôi đã lựa chọn đề tài “Q uản lý thi trắc nghiệm trên mạng ” làm đề tài khoá luận tốt nghiệp vầ phần nào đẩy mạnh việc ứng dụng CNTT vào giáo dục
Trang 5II Ngôn ngữ cài đặt.
Hiện nay có rất nhiều ngôn ngữ cũng nh các phần mềm thiết kế Web Mỗi một ngôn ngữ đều có những thế mạnh riêng của nó Tuy nhiên, hầu hết các trang Web hiện nay đều sử dụng HTML (HyperText Markup Language) Đồng thời sự
ra đời của ASP (Active Server Page) đã làm cho các trang Web trở nên sinh động
và nhiều tác vụ hơn nh hiện nay Tuy nhiên rằng gần nh tất cả các trang Web đợc viết bằng ASP đều nhúng trong HTML Với những thế mạnh của HTML và ASP chúng tôi chọn hai ngôn ngữ này để thiết kế
III Kết quả xây dựng Web site và định hớng phát triển.
Do thời gian và điều kiện có hạn nên Web site này thiết kế chỉ dùng cho thi trắc nghiệm với dạng câu hỏi nhiều lựa chọn Đồng thời có thể sử dụng nó cho việc tổ chức thi bất cứ môn học hay cuộc thi nào Bởi không phải nh các Web site tĩnh đã có mà ở đây có thể thêm bớt thay đổi môn học tuỳ ý Đồng thời trong mỗi môn có thể thêm bớt câu hỏi, tạo đề,
Trong thời gian tới phần mềm sẽ đợc phát triển với một số chức năng nh:+ Sử dụng nhiều dạng câu hỏi
+ Chuyển đổi cơ sở dữ liệu sang SQL Server hoặc Oracle
+ Chuyển ngôn ngữ lập trình
+ Thiết kế giao diện đẹp và hài hoà hơn
Trang 6Chơng II - Tìm hiểu ngôn ngữ
A Giới thiệu về HTML
I Giới thiệu chung.
Ngày nay, Wold Wide Web chẳng xa lạ gì đối với chúng ta, bởi lẽ gần nh100% các quốc gia trên thế giới hiện nay đã kết nối và sử dụng Internet Hầu hết các Web site đều đợc viết bằng HTML bởi đây là ngôn ngữ cho phép định dạng văn bản, bổ sung hình ảnh âm thanh và video cũng nh việc lu tất cả các tập tin Text Only hoặc ASCII mà bất kỳ máy tính nào cũng có thể đọc đợc khi có đầy đủ phần cứng Chìa khoá để mở ngôn ngữ HTML nằm ở các thẻ (tag) tức là từ khoá nằm
giữa dấu nhỏ hơn (<) và dấu lớn hơn (>) cho biết loại nội dung sẽ xuất hiện
Mặc dù hiện nay có nhiều phần mềm đảm trách việc viết mã HTML nh FrontPage, DreemWeave, nhng việc tìm hiểu và có đợc kỹ thuật lập trình tạo trang Web với HTML sẽ giúp chúng ta chủ động và sáng tạo hơn khi tạo trang Web
HTML – HyperText Markup Language, có 2 đặc tính cơ bản là siêu văn bản và tính phổ quát Siêu văn bản (HyperText) có nghĩa là có thể tạo ra một liên kết trong trang Web đa ngời sử dụng đến một trang Web khác hoặc một nơi nào
đó trên Internet, tức là thông tin trên Web cho phép truy nhập từ nhiều hớng khác nhau (trực tiếp hoặc gián tiếp)
Còn tính phổ quát (universality) là gì? Do tất cả các tài liệu HTML đều đợc
lu dới dạng tập tin ASCII hoặc Text Only nên hầu nh máy nào cũng có thể đọc
đợc trang Web Vì thế HTML mang tính phổ quát
II Các thành phần cơ bản của HTML.
Chúng ta có thể tạo tài liệu HTML với một trình xử lí văn bản bất kì hoặc thông qua một trình hiệu chỉnh trang Web nh FrontPage, Page Mill, DreemWeave, rồi sử dụng những câu lệnh của HTML để bổ sung các hiệu ứng trong các trang Web
Trang 71 Thẻ HTML.
Thẻ (tag) HTML là lệnh nằm giữa hai dấu nhỏ hơn (<) và lớn hơn (>) (còn
gọi là dấu ngoặc nhọn), cho biết cách trình duyệt hiển thị văn bản
Nhiều thẻ có dạng đóng và mở, còn chuỗi kí tự bị tác động là chuỗi nằm giữa hai thẻ mở và đóng Cả thẻ đóng lẫn thẻ mở đều dùng chung từ lệnh, nhng thẻ đóng có thêm dấu xiên phải (/)
Trong cấu trúc của thẻ HTML thì không có cách trống giữa chuỗi kí tự bị tác động với hai dấu ngoặc nhọn Còn chuỗi kí tự nằm ngoài không bị thẻ HTML tác động đến
+ Các thuộc tính:
Nhiều thẻ có thuộc tính (attribute) đặc biệt, cung cấp đủ loại tuỳ chọn cho
chuỗi kí tự bị tác động Thuộc tính đợc nhập vào giữa từ lệnh và dấu lớn hơn cuối cùng Thờng thì ta có thể sử dụng một loại thuộc tính chỉ trong một thẻ Cứ viết thuộc tính này sau thuộc tính khác theo một trật tự bất kì và phân cách nhau bởi kí tự trắng
+ Giá trị:
Trong mỗi thẻ có thuộc tính, còn thuộc tính lại có giá trị (value) ở vài
tr-ờng hợp, ta phải chọn lựa từ nhiều giá trị cho trớc
Ví dụ: thuộc tính CLEAR của thẻ BR có ba giá trị: Left, Right, All.
Trang 8Nói chung, ta phải đặt giá trị giữa hai dấu nháy thẳng “” tránh xa dấu nháy cong <<>> Tuy nhiên, có thể bỏ qua dấu nháy nếu giá trị chỉ chứa chữ (A-Z, a-z),
số (0-9), dấu gạch nối (-), dấu chấm (.) Với URL, nên tập thói quen dùng dấu nháy cho chúng nhằm tránh cho chúng không bị máy chủ hiểu nhầm
+ Thẻ lồng nhau:
Trong vài trờng hợp có khi cần phải chỉnh sửa nội dung trang bằng nhiều thẻ, chẳng hạn nh ta áp dụng loại chữ nghiêng cho một từ của tiêu đề ở đây có hai điều cần ghi nhớ Thứ nhất, không phải loại thẻ nào cũng có thể chứa các thẻ còn lại Lệ thờng là những thẻ tác động đến toàn đoạn có thể chứa thẻ tác động
đến một từ hay một chữ, nhng trong trờng hợp ngợc lại thì không đúng Thứ hai, trật tự là yếu tố quan trọng nhất Mỗi khi sử dụng thẻ đóng, thì thẻ này phải tơng ứng với một thẻ mở cha đóng sau cùng
+ Tên tập tin:
Trang Web thật ra chỉ là một tài liệu văn bản đợc viết bằng thẻ HTML Hệt
nh mọi tài liệu văn bản khác, trang HTML cũng có tên tập tin giúp nhận diện tài liệu trớc bạn, ngời duyệt và trình duyệt Có hai điều mà chúng ta cần ghi nhớ khi
Trang 9đặt tên cho tập tin cho trang Web là dùng chữ thờng cho tập tin và dùng đúng phần mở rộng của nó Ví dụ: thi_trac_nghiem.htm
Điều này giúp chúng ta dễ dàng tổ chức tập tin, cho phép ngời duyệt nhanh chóng tìm thấy và truy cập trang Web đồng thời đảm bảo trình duyệt hiện đúng nội dung trang
+ URL:
URL, Uniform Resource Locator, là tên gọi hoa mỹ của địa chỉ Web URL chứa thông tin về địa chỉ điểm tập tin và cách thức trình duyệt xử lí tập tin Mỗi tập tin trên Internet đều có riêng một URL không trùng lặp Phần đầu tiên của một URL là lợc đồ (scheme), cho trình duyệt biết cách xử lí tập tin sắp mở Một trong những lợc đồ thông dụng nhất là HTTP, tức là HyperText Transfer Protocol, dùng để truy cập trang Web
Ví dụ: “http://www.tracnghiem.com/csdl/index.htm”
Phần thứ hai của một URL là tên của máy phục vụ chứa tập tin, theo sau là
đờng dẫn tới tập tin, rồi đến chính tập tin đó Đôi khi, nó kết thức bằng dấu xiên phải mà không định rõ tên tập tin Gặp trờng hợp nh vậy thì URL tham chiếu đến tập tin mặc định trong th mục cuối cùng theo đờng dẫn
Ví dụ: http://www.tracnghiem.com/csdl/
Một số lợc đồ thông dụng khác là: HTTPS cho trang Web an toàn, FTP (File Transfer Protocol) để tải tập tin về từ Net, Gopher để tìm kiếm thông tin, News gửi và đọc thông điệp thuộc nhóm tin Usenet, Mailto gửi th điện tử, File truy cập tập tin trên đĩa cứng cục bộ
2 Giới thiệu một số thẻ HTML thông dụng.
Khi thiết kế một trang Web bằng HTML chúng ta cần phải nắm đợc tác dụng của các thẻ và sử dụng chúng một cách hợp lí Sau đây là một số thẻ thông dụng hay đợc sử dụng trong các trang Web
+ Thẻ <HTML> </HTML>
Đây là thẻ dùng để nhận diện nội dung của tài liệu văn bản ở dạng mã HTML
Trang 101 Gõ <HEAD> ngay sau thẻ <HTML>
2 Nội dung phần HEAD
3 Gõ </HEAD>
+ Thẻ <BODY> </BODY>
Thẻ này chứa nội dung trang Web, phần mà chúng ta sẽ nhìn thấy bao gồm cả chữ và hình ảnh
1 Gõ <BODY> ngay sau thẻ </HEAD> cuối cùng
2 Nội dung trang
3 Gõ </BODY>
+ Thẻ <TITLE> </TITLE>
Tạo tiêu đề cho trang WEb, mỗi trang HTML bắt buộc phải có tiêu đề Tiêu
đề giúp ngời sử dụng hiểu đợc nội dung trang Web và thông thờng chỉ ngắn gọn, súc tích
Trang 111 Gõ <P>
2 Nếu muốn canh chỉnh nội dung thì dùng ALIGN=direction, với
direction là các giá trị Left, Ritgh, Center.
3 Lặp lại hai bớc trên cho từng phông chữ bổ sung
4 Gõ ”> để hoàn tất thẻ FONT
5 Gõ chuỗi kí tự hay đoạn văn bản sẽ hiển thị với phông chỉ định
6 Gõ </FONT>
Chú ý rằng chúng ta cũng có thể chọn cỡ chữ hoặc màu chữ bằng cách sử dụng các thuộc tính SIZE và COLOR nh sau:
<FONT SIZE=7 FACE= Garamond Bold COLOR= #000FF0 >” ” ” ”
Trang 122 Gõ chuỗi kí tự cần thây đổi.
1 Gõ <SUB> tạo chỉ số dới, <SUP> tạo chỉ số trên
2 Gõ các kí tự hoặc kí hiệu của chỉ số trên hoặc chỉ số dới
3 Gõ </SUB> hoặc </SUP>
BGCOLOR=color với color là 1 trong 16 màu đã định.
2 Ngoài ra ta có thể thêm các thuộc tính khác vào trong thẻ BODY Ví dụ khi muốn sử dụng ảnh nền ta thực hiện nh sau:
- Trong thẻ BODY ở đầu trang gõ BACKGROUND =
- Gõ “bgimage.gif” với “bgimage.gif” là vị trí hình ảnh cần dùng trên máy phục vụ
- Nếu muốn hình ảnh trở thành hình chìm sau văn bản thì dùng thêm thuộc tính BGPROPERTIES=fixed
+ Thẻ <BR>: Tạo dấu ngắt dòng
Gõ <BR> tại vị trí cần ngắt dòng, và không có thẻ </BR> đóng
+ Thẻ <BLOCHQUOTE>
Trang 13Thẻ tạo khối trích dẫn, tức là dùng để dịch lệch một phân mục văn bản, trích một đoạn quan trọng, so với phần văn bản xung quanh.…
+ Thẻ <MULTICOL>: Tạo cột cho trang Web
Chúng ta có thể chia một trang thành nhiều cột để tiện lợi cho việc trình bày nội dung của mỗi trang
1 Trong tài liệu HTML gõ <MULTICOL
2 Gõ COLS=n, với n là số cột Để tạo khoảng cách giữa các cột thì thêm thuộc tính GUTTER=m, với m là khoảng cách giữa các cột
3 Để tạo độ rộng của mỗi cột ta gõ WIDTH=k, với k là chiều rộng của mỗi cột bao gồm cả khoảng trắng
4 Gõ > để hoàn tất việc chia cột
5 Tạo phần tử chứa trong cột
6 Gõ </MULTICOL>
+ Thẻ <A> </A>
Trên thực tế có rất nhiều trang Web tồn tại chính vì vậy việc tổ chức để liên kết các trang nhằm trao đổi thông tin là một việc rất cần thiết HTML cung cấp thẻ <A> nhằm mục đích là để tạo liên kết từ trang Web chủ đến một trang Web khác thông qua địa chỉ của nó Cách tạo liên kết:
1 Gõ <A HREF= page.html“ ”, trong đó page.html là địa chỉ của trang
Trang 14Một trong những đặc tính tuyệt vời của HTML là khả năng gán phím tắt cho các mục khác nhau của trang, kể cả các liên kết Cách tạo phím tắt nh sau:
- Bên trong thẻ của liên kết ta gõ ACCESSKEY=“
- Gõ phím tắt và dấu ” sau cùng
- Nếu cần thì có thể gõ thêm chú thích về nội dung của phím tắt để
ng-ời duyệt có thể nhận biết sự tồn tại của phím tắt
+ Tạo bảng đơn giản.
Bảng biểu là một trong những kiểu trình bày trang Web phổ biến, nó đợc cấu thành từ nhiều ô, hàng, cột Cách tạo bảng trên Web:
1 Gõ <TABLE>
2 Gõ <TR> để ấn định điểm bắt đầu hàng thứ nhất
3 Gõ <TD> để định điểm bắt đầu ô
4 Gõ nội dung ô
5 Gõ </TD> để hoàn tất ô
6 Lặp lại các bớc tù 3 đến 5 cho mỗi ô trong hàng
7 Gõ </TR> để hoàn tất hàng
8 Lặp lại các bớc từ 2 đến 7 cho mỗi hàng
9 Để hoàn thành bảng gõ </TABLE>
+ Tạo khung viền cho bảng.
Khung viền nhằm mục đích tách bảng ra khỏi phần văn bản còn lại Đồng thời tạo sự nổi bật nội dung trong bảng so với văn bản
1 Trong thẻ TABLE đầu tiên ta gõ BORDER
2 Nếu muốn bạn có thể gõ =n trong đó n là độ dày đờng viền tính bằng pixel Mặc định là n=2 pixel
Trên thực tế thì luôn tồn tại khung viền dù có sử dụng thẻ BORDER hay không Thực ra thẻ này chỉ quyết định việc che dấu hay hiển thị khung viền mà thôi Để xoá hẳn khung viền ta chọn n=0
+ Xếp chữ xung quanh bảng.
Trang 15Không phải lúc nào bảng biểu cũng trải trên toàn bộ trang Web mà chúng ta tạo ra, vì vậy có thể sử dụng phơng pháp xếp chữ xung quanh bảng để tiết kiệm trang hiển thị cũng nh làm đẹp hơn các trang có bảng hoặc hình ảnh nhỏ.
1 Gõ <TABLE
2 Gõ ALIGN=left để canh trái bảng với màn hình trong khi văn bản lần
l-ợt xuống dòng nơng theo bên lề bảng, hoặc gõ ALIGN=right để canh phải bảng với cửa sổ trình duyệt, còn văn bản sắp xếp bên trái bảng
3 Gõ dấu >
4 Tạo phần bảng còn lại
5 Gõ </TABLE>
6 Gõ văn bản sẽ sắp xếp quanh bảng
Khi cần dừng việc sắp xếp quanh bảng ta có thể làm nh sau:
1 Đặt con trỏ nơi bạn muốn dừng việc xếp chữ
2 Gõ <BR CLEAR=left>, <BR CLEAR=right> hoặc <BR CLEAR=all>
tuỳ theo cách bạn muốn dừng theo chiều nào
+ Mẫu biểu và thẻ tạo mẫu biểu <FORM>
Mẫu biểu là thành phần dùng để giao tiếp hay nói cách khác là để ngời dùng nhập thông tin vào đó và gửi đến máy phục vụ hoặc gửi đến cho một ai đó Mẫu biểu có hai thành phần cơ bản: một là cấu trúc, tức là shell, bao gồm trờng, nhãn,
những nút mà ngời duyệt nhìn thấy trên trang và những điểm điền thông tin vào; hai
là kịch bản xử lý (processing script), nhận thông tin do ngời xem gõ vào và chuyển
đổi nó sang dạng thức mà ta có thể đọc hoặc chỉnh sửa đợc
Việc xây dựng cấu trúc mẫu biểu cũng đơn giản và tơng tự nh tạo bất kì thành phần nào của trang Web Chúng ta có thể tạo hộp nhập (Text box), hộp mật mã đặc biệt, nút radio, ô chọn, menu sổ xuống, vùng văn bản lớn hoặc hình
ảnh có thể nhấp nữa Đồng thời có thể đặt tên cho mỗi phần tử nhãn nhận diện dữ liệu một khi dữ liệu đã đợc xử lý
Thông thờng một mẫu biểu có 3 phần quan trọng là: thẻ FORM, có kèm theo URL của kịch bản CGI dùng để xử lý mẫu biểu; các thành phần mẫu biểu
Trang 16nh trờng, menu; và nút gửi dữ liệu đến kịch bản CGI trên máy phục vụ Cách tạo một mẫu biểu nh sau:
1 Gõ <FORM METHOD=POST
2 Gõ ACTION= script.url >“ ” , trong đó script.url là vị trí của kịch bản
CGI trên máy phục vụ, kịch bản này sẽ chạy khi mẫu biểu đợc đệ trình
3 Tạo nội dung của mẫu biểu, kể cả nút gửi dữ liệu hoặc hình ảnh hoạt động
<form method=get action="cgi.script.url">
<p>Name <input type="text" name="visitor_name" size=30>
<p>E-mail <input type="text"name="visitor_email" size=30>
<p>Gi oi tinh
<input type="radio" name="Computer" value="mac">Nam
<input type="radio" name="Computer" value="PC">Nu
<p> <input type="submit" name="submit" value="Send to">
</form>
</html>
Trang 17+ Gửi dữ liệu mẫu biểu thông E-mail.
Trong trờng hợp nếu bạn không cần định dạng dữ liệu hoàn chỉnh, hãy yêu cầu ngời duyệt gửi dữ liệu đến thông qua địa chỉ E-mail của bạn
1 Gõ <FORM METHOD=POST
2 Gõ ENCTYPE= text/plain“ ” để định dạng văn bản gửi đến
3 Gõ ACTION= mailto:you@site.com“ ”, trong đó you@site.com là địa
chỉ e-mail bạn chỉ định làm nơi tiếp nhận dữ liệu gửi đến
4 Gõ dấu > rồi gõ nội dung mẫu biểu
5 Gõ </FORM>
+ Tạo hộp nhập (text box)
Hộp nhập có thể chứa một dòng văn bản tuỳ ý, nghĩa là bất cứ những gì
ng-ời xem muốn gõ vào và thông thờng thì đó là cho tên gọi, địa chỉ, e-mail, sở thích,…
1 Gõ vào nhãn nhận diện hộp nhập trớc ngời xem, điều này là gần nh là bắt buộc để nhận biết tên hộp nhập
2 Gõ <INPUT TYPE= text“ ”
3 Gõ NAME= name“ ”, với name là chuỗi kí tự nhận diện dữ liệu nhập vào
trớc máy phục vụ
4 Gõ VALUE= value“ ” nếu muốn, với value là dữ liệu đầu tiên hiển thị
trong hộp nhập và sẽ đợc gửi đến máy phục vụ nếu ngời duyệt không gõ thông tin gì khác
Trang 18<form method=get action="cgi.script.url">
<p>Name: <input type="text" name="visitor_name" size=30>
<p>E-mail: <input type="text"name="visitor_email" size=30>
<p>Add : <input type="text"name="visitor_email" size=30>
<p> <input type="submit" name="submit" value="Send to">
C¸ch t¹o hép mËt m· nµy tîng tù c¸ch t¹o hép nhËp, nhng chØ kh¸c lµ ta sö dông lÖnh <INPUT TYPE= password“ ”
Sau ®©y lµ vÝ dô vÒ c¸ch t¹o hép mËt m·:
Trang 19<form method=get action="cgi.script.url">
<p>Name: <input type="text" name="visitor_name" size=30>
<p>Password: <input type="password" name="visitor_password" size=20>
<p> <input type="submit" name="submit" value="Send to">
1 Đầu tiên hãy nhập nhãn giới thiệu cho mỗi nút
2 Gõ <INPUT TYPE= radio“ ”
3 Gõ NAME= radioset“ ”, trong đó radioset vừa nhận diện dữ liệu gửi cho
kịch bản, vừa liên kết các nút radio lại với nhau đảm bảo mỗi lần chỉ một nút đợc nhấp chọn
4 Gõ VALUE= data“ ”, với data là văn bản gửi đến máy phục vụ nếu nút
radio đợc bạn hoặc ngời xem nhấp chọn
5 Gõ >
+ Tạo ô chọn:
Trang 20Trong khi nút radio chỉ chấp nhận hỏi đáp cho mỗi tập hợp, ngời sử dụng có thể đánh dấu chọn bao nhiêu ô chọn (checkbox) tuỳ thích thuộc cùng tập hợp T-
ơng tự nút radio, ô chọn liên kết với nhau thông qua giá trị của thuộc tính NAME
1 Gõ nhãn giới thiệu và trớc ô chọn
2 Gõ <INPUT TYPE= checkbox“ ”
3 Gõ NAME= boxset“ ”, trong đó boxset vừa nhận diện dữ liệu gửi đến
cho kịch bản vừa liên kết các ô chọn với nhau
4 Gõ VALUE= value“ ” để định rõ giá trị cho mỗi ô chọn Giá trị này sẽ
đ-ợc gửi đến máy phục vụ nếu ngời sử dụng đánh dấu vào ô chọn
5 Có thể gõ CHECKED để ô chọn có dấu theo mặc định khi trang đợc mở Chúng ta có chọn bao nhiêu ô tuỳ ý
<form method=get action="cgi.script.url">
<p>Ho ten: <input type="text" name="visitor_name" size=30>
<p>E-mail: <input type="text" name="visitor_email" size=30>
<p><B>Gioi tinh:</B>
<input type="radio" name="size" >Nam
<input type="radio" name="size" >Nu
<p><B>So thich:</B>
<input type="checkbox" name="size1" >Bong da
<input type="checkbox" name="size1" >Bong ban
<input type="checkbox" name="size1">Bong chuyen
<p> <input type="submit" name="submit" value="Send to">
<input type="reset" name="reset" value=" Reset ">
</form>
</html>
Trang 213 Gõ NAME= name“ ”, với name là tên nhận diện dữ liệu thu thập đợc từ
menu khi nó đợc gửi đến máy phục vụ
4 Gõ SIZE=n, trong đó n biểu thị chiều cao của menu (tính bằng dòng)
5 Gõ >, rồi gõ <OPTION
6 Gõ VALUE= value“ ”, tróng đó value định rõ dữ liệu sẽ gửi đến máy
phục vụ nếu tuỳ chọn này đợc chọn
7 Gõ >, sau đó đặt tên cho tuỳ chọn, đồng thời đây cũng là tuỳ chọn sẽ xuất hiện trong menu
8 Gõ </SELECT>
<html>
<head>
<title>Thu</title>
Trang 22<body>
<form method=get action="cgi.script.url">
<p>Ho ten: <input type="text" name="visitor_name" size=30>
<p>E-mail: <input type="text" name="visitor_email" size=30>
<p>Gioi tinh: <select name="gioi tinh">
<option value="Nam">Nam
<option value="Nu">Nu
</select>
<p> <input type="submit" name="submit" value="Send to">
<input type="reset" name="reset" value=" Reset ">
</form>
</html>
+ Tạo menu nhiều cấp:
1 Đầu tiên ta tạo menu nh trên
2 Ngay trớc thẻ <OPTION> đầu tiên trong nhóm đầu tiên sẽ đợc đặt vào chung menu con, hãy gõ <OPTGROUP
Trang 233 Gõ LABEL= submenutitle“ ”, với submenutitle là tiêu đề dành cho
menu con
4 Ngay sau thẻ <OPTION> cuối cùng của nhóm, gõ </OPTGROUP>
5 Lặp lại các bớc từ 2 - 4 cho các menu con
+ Tạo nút gửi dữ liệu:
Trên thực tế toàn bộ thông tin mà ngời sử dụng nhập vào đều vô dụng nếu
nh họ không gửi chúng đến máy chủ Vì vậy để dữ liệu nhập vào có tác dụng thì việc cần thiết là phải tạo nút gửi dữ liệu cho mẫu biểu nhằm chuyển chúng đến máy chủ
1 Gõ <INPUT TYPE= submit“ ”
2 Nếu cần thiết thì gõ thêm VALUE= submit message“ ”, trong đó
submit message là chuỗi kí tự xuất hiện trong nút.
3 Gõ >
+ Tạo nút RESET:
Khi nhập dữ liệu hay thông tin, cha hẳn bạn đã nhập chính xác hoàn toàn ngay lần nhập đầu tiên Nút RESET sẽ giúp ngời sử dụng bắt đầu lại với một mẫu biểu mới nguyên
1 Gõ <INPUT TYPE= reset“ ”
2 Nếu cần thiết thì gõ thêm VALUE= reset message“ ”, trong đó reset message là chuỗi kí tự xuất hiện trong nút, mặc định là reset.
3 Gõ >
Ví dụ: Cách tạo nút gửi dữ liệu và reset:
<input type="submit" name="submit" value="Send to">
<input type="reset" name="reset" value=" Reset ">
Trang 24B Giới thiệu về ASP Active Server Page–
Vào giữa những năm 90 của thế kỉ trớc, khi bắt đầu bùng nổ sự truy cập Web thì đa số những ngời sử dụng máy tính đều có thể truy cập thông tin trên Internet Tuy nhiên, các nhà thiết kế Web lại gặp khá nhiều khó khăn trong việc
đa thông tin lên Web và cập nhập chúng Đồng thời cuộc chiến giữa các trình duyệt và các phần mềm thiết kế Web site cũng ngày càng có xu thế tăng mạnh Trớc tình hình đó Microsoft đã đa ra ASP (Active Server Page) để liên kết một số công nghệ nhằm tạo các trang Web hiện đại, cho phép tơng tác dễ dàng giữa các máy chủ và cơ sở dữ liệu Trong những công nghệ đó có ADO (ActiveX Data Object)
Sự ra đời của ASP đã tạo ra một bớc tiến mới trong sự phát triển các ngôn ngữ lập trình Web Đồng thời tạo ra một diện mạo mới cho các trang Web có sử dụng ASP
I Giới thiệu chung.
1 Khái niệm ASP.
ASP là môi trờng kịch bản trên máy chủ (Server – Side Scripting Environment) dùng để tạo và chạy các ứng dụng Web động và có tơng tác Nhờ tập các đối tợng có sẵn (Built in Object) với nhiều tính năng phong phú, khả năng hỗ trợ VBscript, lẫn JScript cùng một số thành phần Activex khác kèm theo, ASP cung cấp giao diện lập trình mạnh và dễ dàng trong việc triển khai các ứng dụng trên Web
* Trang ASP là trang Web trong đó có sự kết hợp các thành phần HTML, ActiveX Component và ASP SCript Có thể xem ASP nh là một trang HTML có
bổ sung ASP script command
2 Hoạt động của trang ASP.
Khi mỗi trang ASP đợc yêu cầu bởi Web Browser, đầu tiên Web server xem xét và thực hiện hết những câu lệnh ASP Script Kết quả là một “trang thuần HTML” đợc đa ra Browser Ngời sử dụng có thể không thấy những câu lệnh ASP
Trang 25Script bởi vì nó đã đợc thay thế bằng các giá trị kết quả của quá trình thực thi trên server.
Thờng thì ứng dụng ASP gồm các trang ASP và các thành phần khác đặt trong một th mục (Application Directory) đợc khai báo với Web server, th mục này phải đợc gán quyền Executive hay Script để trong ASP hoạt động đúng Trong Application Directory có một tập tin đặc biệt là Global.asp dùng để chia
sẻ thông tin cho toàn ứng dụng
Trên thực tế trang ASP có thể chạy với Microsoft Internet information Server (IIS) 3.0 Tuy nhiên nên dùng ASP với ISS phiên bản 4.0 trên Windows
NT hoặc Microsoft Personal Web Server (PWS) 4.0 trên Windows9x để sử dụng những tính năng mới và các ActiveX Componet kèm theo Đồng thời có thể cài
đặt IIS 4.0 hoặc PWS 4.0 từ phần NT Option Pack trong bộ Visual Stadio 6.0
Có thể nói, ASP thực sự là một phần mở rộng cho Web Server Nó cung cấp một tập hợp các thành phần (componet) và đối tợng (Object) để quản lý sự tơng tác giữa Web Server và trình duyệt Các đối tợng này có thể đợc xử lý bởi chính ngôn ngữ kịch bản (Scripting Language)
3 Cách tạo trang ASP.
Với một trang HTML có sẵn chúng ta có thể dễ dàng tạo trang ASP bằng cách thêm vào các lệnh ASP Script cần thiết và đổi phần mở rộng thành *ASP
Chú ý: do trang ASP đợc xử lý trớc trên Server nên nó sẽ tốn nhiều thời gian hơn
để đa ra Browser, do đó tránh đặt tên trang là ASP khi không cần thiết tức là khi
nó là trang “thuần HTML”.
4 Các đối tợng của ASP.
ASP có 6 đối tợng đợc xây dựng sẵn (ASB – Built in Object), mỗi một đối tợng đều liên quan đến một khía cạnh đặc trng của sự tơng tác Bao gồm:
Session object: Đây là đối tợng đợc dùng để lu trữ thông tin cần thiết trong
phiên làm việc của ngời sử dụng Những thông tin lu trữ trong Session không bị mất đi khi ngời sử dụng di chuyển qua các trang của ứng dụng
Trang 26Application Object: Nó dùng để chia sẻ thông tin giữa những ngời sử dụng
trong cùng một ứng dụng Đối tợng này thờng đợc dùng trong việc đếm số lần truy cập đến ứng dụng của những ngời sử dụng
Request Object: Dùng để truy cập những thông tin đợc chuyển cùng với
các yêu cầu HTTP Những thông tin này bao gồm các tham số của Form khi đợc Submit dùng phơng pháp Post hay Get hay các tham số đợc ghi cùng với trang ASP trong lời gọi đến trang đó Đối tợng còn đợc dùng để lấy giá trị các Cookie
lu trữ trên máy khách (Client)
Response Object: Nó đợc dùng để gửi thông tin cho ngời sử dụng, gồm có
ghi thông tin trực tiếp ra Browser, chuyển Browser đến mọt URL khác hoặc thiết lập các Cookie trên máy khách
Server Object: Cung cấp phơng tiện truy cập đến những phơng thức và
thuộc tính trên Server Thờng thì sử dụng phơng thức Server.createObject để khởi tạo instance của một ActiveX Object trên trang ASP
Object Context: Sử dụng Object Context để chấp thuận hoặc huỷ bỏ
transaction đợc khởi tạo bởi một ASP Script
5 Các thành phần ActiveX.
• Đối tợng truy cập dữ liệu ADO (ActiveX Data Object): Đây là 1 thành phần
trong bộ Microsoft Data Access Component (MDAC – gồm ADO,
Client
Response Object
Request Object
Object Context Object
Server
Server Object
Application Object
Session Object
Trang 27OLEDB và ODBC) ADO cung cấp giao diện lập trình quen thuộc với những thuộc tính và phơng thức theo mô hình đối tợng để tạo sự dễ dàng cho các lập trình viên, nhất là đối với những ngời quen với ADO và RDO
ở mức hệ thống các chức năng tơng tác dữ liệu thật sự với DBMS sẽ do thành phần OLEDB (gọi là OLEDB Provider) đảm nhiệm, thành phần này
do nhà sản xuất cơ sở dữ liệu cung cấp cùng với sản phẩm của họ Hiện nay, do đa số hệ DBMS dùng ODBC làm giao diện cơ sở dữ liệu nên Microsoft có kèm theo một thành phần gọi là OLE DB Provider for ODBC
để ADO có thể làm việc trên các hệ thống cơ sở dữ liệu hiện tại dùng giao tiếp ODBC
• Các thành phần ActiveX khác:
- Ad Rotator Object (Ad Rotator): Luân phiên hiển thị dãy các hình ảnh
cũng nh liên kết từ hình ảnh đợc hiển thị đến một URL Thông tin về hình ảnh và liên kết tơng ứng đợc lu trong File Text
- Browser Capabilities Object (Browser Type): Những thông tin về
Browser nh tên, version có hỗ trợ Frame, Table hay không?
- Page Counter: Đếm và hiển thị số lần trang Web đợc yêu cầu.
- My info, Status, System, Tools Object: Các thông tin về Website
Application
ADO
OLE DB
Spead
Sơ đồ giao tiếp các thành phần của MDAC
Trang 28- Mô hình ứng dụng một cơ sở dữ liệu trên Web:
- Web Server: là nơi tiếp nhận và trả lời các yêu cầu của Web user, đồng thời
cũng thực hiện việc kết nối đến hệ DBMS trên Database Server theo yêu cầu truy cập dữ liệu của trang ASP ADO cung cấp giao diện lập trình cho ngời phát triển và xây dựng các lệnh truy cập cơ sở dữ liệu Các lệnh này đợc chuyển đến cho hệ DBMS để thực thi thông qua các thành phần OLE DB và ODBC Kết quả truy vấn dữ liệu sẽ đợc Web Server đa ra hiển thị trên Browser
- Database Server: là nơi diễn ra các thao tác cơ sở dữ liệu nh truy vấn cập
nhập cũng nh đảm bảo tính toàn vẹn dữ liệu của hệ DBMS
- Browser: giao diện với ngời sử dụng, là nơi tiếp nhận yêu cầu của ngời sử
dụng cũng nh hiển thị kết quả yêu cầu Ngoài ra, Browser còn là nơi kiểm tra sơ bộ tính hợp lệ của dữ liệu trớc khi chuyển đến cho Web Server
II Những tác vụ cơ bản của ASP.
DBMS
(SQL Server
Sơ đồ ứng dụng trên Web