Bài giảng Lập trình mạng - Chương 4: DHMTL và Lập trình Web chạy ở Client - Nguyễn Cao Đạt

Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
DHMTL  
& LP TRÌNH WEB CHY CLIENT  
CHƯƠNG IV  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 1  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
GII THIU HTHNG WEB  
Mô hình hot động: Web browser/Web server  
Web client  
Web server  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
HTTP  
Trang 2  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
GII THIU HTHNG WEB  
z Web server: chương trình qun lý mt cây thbc các trang  
Web và phc vyêu cu truy xut chúng tcác client txa.  
z Web Browser: chương trình giao tiếp vi người dùng, nhn  
yêu cu tuser ri truy xut trang Web server tương ng  
để phân gii và hin thni dung lên màn hình.  
z Trang Web: đơn vgi nhn gia Web server và Web client,  
nó là 1 file văn bn được viết bng ngôn ngHTML  
z Web browser và web server sto 1 cu ni TCP để trao đổi  
thông tin, server lng nghe port 80 (port mc định) và dùng  
giao thc HTTP (HyperText Transfer Protocol).  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 3  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
CU TRÚC MT GIAO DCH HTTP 1.0  
z
z
z
Bước 1: HTTP client mkết ni đến HTTP server  
Bước 2: HTTP client gi request message đến HTTP server  
Bước 3: HTTP server trresponse mesage vcho HTTP client, cha  
resource mà HTTP client yêu cu  
z
B
z
Ví d  
Client:  
Server:  
GET /path/file.html HTTP/1.0  
From: someuser@jmarshall.com  
User-Agent: HTTPTool/1.0  
[blank line here]  
HTTP/1.0 200 OK  
Date: Fri, 31 Dec 1999 23:59:59 GMT  
Content-Type: text/html  
Content-Length: 1354  
[blank line here]  
<html>  
</html>  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 4  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
GII THIU VLP TRÌNH WEB  
z Các đặc đim ca ng dng web  
Không phi là mt ng dng độc lp, là ng dng chy  
trên nn web-server.  
Người lp trình có ththc hin các thao tác trên ng dng  
web như vi mt ng dng độc lp.  
Có thly thông tin tuser.  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 5  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
HTML – HyperText Markup Language  
z Là mt ngôn ngữ đánh du siêu văn bn.  
z Sdng các th(tag) để định dng: văn bn, đon  
vi tượng  
như file Word, Excel, JavaBean…  
z Cho phép chèn các đon mã script như JavaScript  
thc thi ti trình duyt (browser).  
z định dng chun cho trang web.  
Mrng: XML, WSDL/SOAP…  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 6  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
CÁC CÔNG CTO TRANG WEB  
z Microsoft Visual InterDev 6  
HTML, ASP…  
z Microsoft Visual Studio.NET 2003  
HTML, ASP.NET, ASP.NET Webservice, C#, C++…  
z Microsoft Frontpage  
HTML…  
z Jbuilder  
HTML, JSP, Java Servlet, Java EJB…  
z Macromedia Dreamweawer MX 2004  
HTML, ASP, JSP, ASP.NET…  
z EditPlus  
z Notepad/Wordpad/Unix VIM  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 7  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
HTML – HyperText Markup Language  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 8  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
HTML – HyperText Markup Language  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 9  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
HTML – HyperText Markup Language  
z FORMs  
Cu trúc cơ bn ca mt form  
[<INPUT TYPE=“” NAME=“” VALUE="">]+  
</FORM>  
Các loi (type) INPUT  
z TEXT: là textbox dùng để nhp dliu.  
Cú pháp:  
<INPUT [TYPE=TEXT] NAME="text-id" [SIZE=nn]  
[MAXLENGTH=nn] [VALUE="default text"]>  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 10  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
HTML – HyperText Markup Language  
z FORMs(tt)  
Các loi (type) INPUT  
z SUBMIT: truyn dliu form đến ng dng web  
Cú pháp: <INPUT TYPE=SUBMIT [NAME="button-id"]  
[VALUE="text"]>  
z RESET:đưa ni dung ca form trvgiá trban đầu  
Cú pháp: <INPUT TYPE=RESET [VALUE=“text"]>  
z BUTTON: nút nhn bt kỳ  
Cú pháp: <INPUT TYPE=BUTTON [NAME="button-id"]  
[VALUE="text"]>  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 11  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
HTML – HyperText Markup Language  
z FORMs(tt)  
Các loi (type) INPUT  
Cú pháp: <INPUT TYPE=RADIO NAME="radio-set-id"  
VALUE="choice-id" [checked]>  
<input type="radio" value="V1" checked name="R1">Option 1  
<br><input type="radio" value="V2" name="R1">Option 2  
<br><input type="radio" value="V3" name="R1">Option 3  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 12  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
HTML – HyperText Markup Language  
z FORMs(tt)  
Các loi (type) INPUT  
z CHECKBOX: la chn mt hoc nhiu  
Cú pháp: <INPUT TYPE=CHECKBOX NAME="id"  
VALUE="choice-id" [CHECKED]>  
Ví d:  
<input type="checkbox" name="C1“ value="ON">Check 1 <br>  
<input type="checkbox" name="C1" value="ON" checked>Check 2  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 13  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
HTML – HyperText Markup Language  
z FORMs(tt)  
Các loi (type) INPUT  
Cú pháp: <INPUT TYPE=HIDDEN NAME="id"  
VALUE="data">  
Nhp vùng văn bn: TEXTAREA  
z <TEXTAREA NAME="id" [COLS=nn] [ROWS=nn]>default  
text</TEXTAREA>  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 14  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
HTML – HyperText Markup Language  
z FORMs(tt)  
z FORMs(tt)  
La chn listbox: SELECT  
z <SELECT NAME="id" [SIZE=nn] [MULTIPLE]>  
[<OPTION [VALUE=“value"] [SELECTED]>text ]+  
</SELECT>  
<select size="1" name="D1">  
<option value="501097">Mng máy tính</option>  
<option value="501016">Lp trình mng</option>  
</select>  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 15  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
LP TRÌNH WEB CLIENT  
z Các trang HTML có thể được lp trình để thc hin  
các thao tác thc thi trên web client.  
z Các phng pháp phbin lp trình hin nay:  
Script (Javascript, Vbscript)  
Java Applet  
ActiveX Control  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 16  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
LP TRÌNH WEB CLIENT  
z Cú pháp cho mt đon code Javascript  
<script language=“JavaScript”>  
//các khai báo biến  
[var variable;]*  
//các lnh gi hàm và các hàm  
function function-name([agrv]*){  
//các câu lnh khai báo và thc thi  
[return [value];]  
}
</script>  
z Sdng file Javascript (*.js) đã có  
<script language="JavaScript" src="*.js"></script>  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 17  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
LP TRÌNH WEB CLIENT  
z Các đối tượng được xây dng sn trong JavaScript  
window: cha các thuc tính liên quan đến ca shin thi  
location: các thuc tính về địa chtrang web  
history: các thuc tính vvtrí mà web browser đã đến  
z Mi phn ttrong trang HTML đều có thcoi là mt đối  
tượng, có thkhai báo skin để gi hàm Javascript.  
Cú pháp  
<tags-name [properties]*  
[event-name=“procedure call” ]*>  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 18  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
LP TRÌNH WEB CLIENT  
Các skin có thdùng  
z onClick: click chut vào đối tượng.  
z onFocus: focus vào đối tượng trong form.  
z onMouseOver: di chuyn chut vào trên đối tượng.  
z onMouseOut: di chuyn chut ra khi đối tượng.  
z onChange: thay đổi giá trca các đối tượng cha văn bn.  
z onBlur: chuyn focus khi đối tượng trong form.  
z onSelect: chn phn ttrong listbox.  
z onLoad: xy ra khi mt document được load.  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 19  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
LP TRÌNH WEB CLIENT  
z Kim tra phn tSELECT  
var select_value;  
function dropDownMenu()  
{
vdex;  
if (myindex==0) {  
alert("\nYou must make a selection from the drop-down  
menu.");  
document.forms[0].menu.focus();  
}
else {  
select_value  
=document.forms[0].menu.options[myindex].value;  
return true;  
}
}
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 20  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
LP TRÌNH WEB CLIENT  
z Kim tra thông tin địa chE-mail nhp vào  
function isEmail() {  
if (document.forms[0].elements[1].value == '') {  
alert ("\n The E-Mail field is blank. \n\n “+  
“Please enter your E-Mail address.")  
document.forms[0].elements[1].focus();  
return false;  
}
if (document.forms[0].elements[1].value.indexOf ('@',0) == -1 ||  
document.forms[0].elements[1].value.indexOf ('.',0) == -1) {  
alert ("\n The E-Mail field requires a \"@\" and a \".\""+  
"be used. \n\nPlease re-enter your E-Mail address.")  
document.forms[0].elements[1].select();  
document.forms[0].elements[1].focus();  
return false;  
}
return true;  
}
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 21  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
DHTML  
z DHTML (Dynamic HTML) là trang HTML có cha  
các đon mã JavaScript to các hiu ng, thay đổi  
z DHTML kết hp gia HTML, Javascript và  
Cascading Style Sheets(CSS).  
z CSS là skết hp gia các tags HTML và style.  
z Style có thcha nhiu thuc tính.  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 22  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
DHTML  
z Mi tags HTML đều có style. Javascript có thda  
trên các biến cố để thay đổi các thuc tính ca style.  
z Mi phn ttrong trang HTML đều có thể được gán  
ID (khác vi name) và có các thuc tính style.  
z Có thdùng tag <div id=“”>…</div>  
z Mi web browser có ththc thi mt slnh khác  
nhau.  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 23  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
DHTML  
z Phát hin loi web browser  
Dùng các thuc tính appName appVersion ca đối  
tượng navigator  
var browser_version = navigator.appName;  
alert(“You use browser “+browser_name+” version “+  
browser_version);  
Phân bit hai loi chính  
if(document.all){ //IE  
the_div=eval(“window.document.all.”+div_name+”.style”);  
}else if(document.layers){//Netscape  
the_div=eval(“window.document.all.”+div_name);  
}
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 24  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
DHTML  
<HTML>  
<HEAD>  
<TITLE>Javascipt example about timer</TITLE>  
<SCRIPT language="JavaScript">  
<!--  
var second_counter=0, counter=0;  
function my_timer(){  
D = new Date();  
seconds= D.getSeconds();  
if(seconds!=second_counter) counter++;  
second_counter=seconds;  
if(counter>=1000) counter=0;  
document.images[0].src= get_images(counter/100);  
document.images[1].src= get_images((counter%100)/10);  
document.images[2].src= get_images(counter%10);  
SecondText.innerText=counter;  
setTimeout('my_timer()',1000);  
}
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 25  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
DHTML  
<HTML>  
<HEAD>  
<TITLE>Javascipt example about timer</TITLE>  
<SCRIPT language="JavaScript">  
<!
va
function my_timer(){  
D = new Date();  
seconds= D.getSeconds();  
if(seconds!=second_counter) counter++;  
second_counter=seconds;  
if(counter>=1000) counter=0;  
document.images[0].src= get_images(counter/100);  
document.images[1].src= get_images((counter%100)/10);  
document.images[2].src= get_images(counter%10);  
SecondText.innerText=counter;  
setTimeout('my_timer()',1000);  
}
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 26  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
DHTML  
function get_images(number){  
var newNum= Math.floor(number);  
return "../images/"+newNum+".jpg";  
}
-->  
</SCRIPT>  
</HEAD>  
<BODY onload='my_timer()'>  
<P><FONT face=System>Timer :  
<IMG alt="" src="../images/0.jpg" width="13" height="23">  
<IMG alt="" src="../images/0.jpg" width="13" height="23">  
<IMG alt="" src="../images/0.jpg" width="13" height="23">  
<FONT face="Arial Black" ID="SecondText">000</FONT>  
seconds</FONT></P>  
</BODY>  
</HTML>  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 27  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
LP TRÌNH WEB CHY CLIENT  
z Java Applet  
Là mt ng dng được viết bng Java, nhúng trong trang  
Khi trang HTML có cha tag applet được gi, class applet  
được ti vmáy client và thc thi trên máy client.  
Mt ng dng applet phi tha kế class java.applet.Applet  
Có ththc hin các thao tác như mt chương trình Java,  
tuy nhiên bhn chế mt schc năng vì tính bo mt cho  
máy client.  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 28  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
LP TRÌNH WEB CHY CLIENT  
z Hot động ca mt Applet  
Được web browser ti mã(byte code) vmáy client.  
Method init() sẽ được gi để khi động các thông s.  
Method start() được gi để thc thi.  
Method stop() được gi khi người dùng thoát khi applet  
Method destroy() được thc thi khi applet kết thúc.  
z ActiveX Control  
Tương tnhư Java Applet, được viết bi các công nghệ  
ca Mircosoft.  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 29  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
LP TRÌNH WEB CHY CLIENT  
//file SampleApplet.java  
import java.applet.*; import java.awt.*;  
public class SampleApplet extends Applet {  
Strin
pu
text = getParameter("text");  
try { x = Integer.parseInt(getParameter("x"));  
y = Integer.parseInt(getParameter("y"));  
}catch(NumberFormatException ex){ }  
}
public void paint(Graphics g) {  
g.setFont(new Font("TimesRoman",Font.BOLD+  
Font.ITALIC,36));  
g.drawString(text,x,y);  
}
}
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 30  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
LP TRÌNH WEB CHY CLIENT  
<HTML> <HEAD> <TITLE>Using the Applet Tag  
</TITLE> </HEAD>  
<BODY>  
<H1>An Applet that Displays Text at a Designated  
Location</H1>  
<APPLET CODE="SampleApplet.class" HEIGHT=300  
WIDTH=300>  
<PARAM NAME="text" VALUE="Applets are fun!">  
<PARAM NAME="x" VALUE="50">  
<PARAM NAME="y" VALUE="50">  
Text displayed by browsers that are not Java-  
enabled.  
</APPLET>  
</BODY>  
</HTML>  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 31  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
TÀI LIU THAM KHO THÊM  
z HTML Homepage on W3C  
z HTML ver 4.0  
z HTML Form  
z Dave Raggett’s Introduction to HTML  
z Javascript & DHTML  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 32  
Tröôøng Ñaïi Hoïc Baùch Khoa Tp.HCM  
TOÅNG KEÁT  
z Gii thiu hthng Web  
z Gii thiu lp trình Web  
z Lp trình Web phía Client  
Javascript  
DHTML  
Baûn quyeàn ®2005- Khoa Coâng Ngheä Thoâng Tin  
Trang 33  
pdf 17 trang Thùy Anh 12/05/2022 2340
Bạn đang xem tài liệu "Bài giảng Lập trình mạng - Chương 4: DHMTL và Lập trình Web chạy ở Client - Nguyễn Cao Đạt", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_lap_trinh_mang_chuong_4_dhmtl_va_lap_trinh_web_cha.pdf