12-3 如ä?使用 ASP ??HTM

ASP Àɮ׳q±`¥H asp ¬°°ÆÀɦW¡A¥¦¬O¤@­Ó¤å¦rÀÉ¡A°£¤F¥]§t°ò¥»ªº HTML ¼Ð°O¥~¡AÁÙ¥i¥H¥]§t ASP ªºµ{¦¡½X¡CASP ªºµ{¦¡½X¬O¥H <% ... %> ªº¼Ð°O¨Ó©M HTML °Ï¤À¡A¦øªA¾¹µoı¥Î¤áºÝ­n¨DªºÀɮ׬O¥H¡uasp¡v¬°°ÆÀɦW¡A´N·|´M§ä ASP µ{¦¡½X¨Ã°õ¦æ¤§¡C¨Æ¹ê¤W¡AASP ªº¼Ð°O <% ... %> ¬O¤@­Ó²¼g¡A­Y­n¨Ï¥Î¤£¦Pªº»y¨¥¡A´N¥²¶·¨Ï¥Î§¹¾ãªºªí¥Ü¤è¦¡¡C¨Ò¦p¡A­Y­n¨Ï¥Î JScript ¨Ó¼¶¼g ASP¡A´N¥²¶·¨Ï¥Î¤U¦C®æ¦¡¡G
<script language=jscript runat=server>
	JScript ªºµ{¦¡½X
</script>
¨ä¤¤­n¯S§Oª`·Nªº¬O¡urunat=server¡v¡A­Y¨S¥[¤W³o¤@¥y¡A¦øªA¾¹´N¤£·|°õ¦æ³o¤@¬qµ{¦¡½X¡A¦Ó±N¤§ª½±µ°e¦^¥Î¤áºÝ¡Aµ²ªG³o¬qµ{¦¡½X·|Åܦ¨¥Ñ¥Î¤áºÝªºÂsÄý¾¹¨Ó°õ¦æ¡A¨º´N§¹¥þ¤j¿ù¯S¿ù¤F¡I

Hint
¨Æ¹ê¤W¡A¥]§t ASP µ{¦¡½Xªººô­¶¡A¥i¥H¤£¥Î asp ¬°°ÆÀɦW¡A¨Ò¦p¡A§A¥i¥H¿ï¥Î hi ¬° ASP ºô­¶ªº°ÆÀɦW¡A¥u­n¦b IIS ¦øªA¾¹¶i¦æ¬ÛÃö³]©w§Y¥i¡C

¨Ï¥Î¤W­zªº¤è¦¡¡A§A¥i¥H¦b¤@­Ó ASP ºô­¶¤º²V¦X¨Ï¥Î¤£¦Pªº»y¨¥¡A¥u­n§A¦³¥[¤W language ªºÄݩʧY¥i¡C­Y­n¦b¤@­Ó ASP ºô­¶¤º¥þ³¡¨Ï¥Î JScript¡A¤@­Ó§ó²³æªº§@ªk¬Oª½±µ³]©w¾ã­Óºô­¶ªº language ÄݩʡA¥u­n¦bºô­¶ªº²Ä¤@¦C¥[¤J¤U­zµ{¦¡½X§Y¥i¡G

<%@ language=jscript %>
¨ä«á¦b¦¹ºô­¶¥Ñ <% ... %> ¥]¦íªºµ{¦¡½X¡A³£·|³Qµø¬°¬O JScript ªºµ{¦¡½X¡A¨Ã¥Ñ¦øªA¾¹©I¥s JScript ªºª½Ä¶¾¹¨Ó°õ¦æ¤§¡C

Hint
¬°¤FÁ×§KÂàÅܵ{¦¡»y¨¥©Ò±a¨Óªº§xÂZ¡A¦b¥»½Òµ{¤¤¡A§Ú­Ì¨ä«áªº asp µ{¦¡½d¨Ò¡A³£·|ºÉ¶q¥H JScript ¨Ó¼¶¼g¡C

­Y­n¦L¥XÅÜ¼Æ x ªº­È¡A¥i¥Î¤U¦C¨âºØ¤èªk¡G

  1. <%Response.Write(x)%>
  2. <%=x%>
¨ä¤¤ Response ¬O ASP ªº¤º«Øª«¥ó¡AWrite() «h¬O¨ä¤¤¤@ºØ¤èªk¡C¥Ñ©ó Response.Write ±`³Q¥Î¨ì¡A¦]¦¹´Nµo®i¥X²Ä¤GºØ§ó²«Kªº¦C¦L¤è¦¡¡C Á|¨Ò¨Ó»¡¡A­Y­n¦b HTML ¤¤¦L¥X¡uHello World!¡v¡A¤U¦C¼ÆºØ¤è¦¡¥i¹F¨ì¦P¼Ëªº®ÄªG¡G
  1. <%Response.Write("Hello World!")%>
  2. <%="Hello World!"%>
  3. <%x = "Hello World!"%><%Response.Write(x)%>
  4. <%x = "Hello World!"%><%=x%>
¦b¤U¦C½d¨Ò¤¤¡A§Ú­Ì¥H¤W­z¤èªk¦L¥X¥|¦C¡uHello World!¡v¡G

Example¡]hello01.asp¡^¡G

¤W­z½d¨Òªº­ì©lÀɦp¤U¡G

­ì©lÀÉ¡]hello01.asp¡^¡G¡]¦Ç¦â°Ï°ì«ö¨â¤U§Y¥i«þ¨©¡^
<%@language=jscript%>

<%title="ASP ¦L¥X¡uHello World!¡vªº¥|ºØ¤èªk"%>
<!--#include file="head.inc"-->
<hr>

Four methods to print "Hello World!" in server-side VBScript:
<p>
<%Response.Write("Hello World!")%><br> 
<%="Hello World!"%><br>
<%x = "Hello World!"%><%Response.Write(x)%><br>
<%x = "Hello World!"%><%=x%><br>

<hr>
<!--#include file="foot.inc"-->

¦b¥»®Ñªº¨ä¥¦ ASP ºô­¶½d¨Ò¤¤¡A§Ú­Ì³£¨Ï¥Î head.inc ¨Ó¥Nªí¬Û¦Pªººô­¶¶}©l³¡¤À¡A¨Ã¨Ï¥Î ¡u<!--#include file="head.inc"-->¡vªº¤è¦¡¨Ó±N head.inc ÀÉ®×¥]§t¶i¨Ó¦¹½d¨Òºô­¶¡Chead.inc ªº¤º®e¦p¤U¡G

­ì©lÀÉ¡]head.inc¡^¡G¡]¦Ç¦â°Ï°ì«ö¨â¤U§Y¥i«þ¨©¡^
<html>
<head>
	<title><%=title%></title>
	<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=big5">
	<style>
		td {font-family: "¼Ð·¢Åé", "helvetica,arial", "Tahoma"}
		A:link {text-decoration: none}
		A:hover {text-decoration: underline}
	</style>
</head>
<body>
<h2 align=center><%=title%></h2>

¦P¼Ëªº¡Afoot.inc ¬O¥Nªí¬Û¦Pªººô­¶µ²§ô³¡¤À¡A§Ú­Ì¨Ï¥Î ¡u<!--#include file="foot.inc"-->¡vªº¤è¦¡¨Ó±N foot.inc ÀÉ®×¥]§t¶i¨Ó¡Afoot.inc ªº¤º®e¦p¤U¡G

­ì©lÀÉ¡]foot.inc¡^¡G¡]¦Ç¦â°Ï°ì«ö¨â¤U§Y¥i«þ¨©¡^
<script>function viewSource() {window.location="view-source:"+window.location} </script>
<%
fso=Server.CreateObject("Scripting.FileSystemObject");
parentDir=Request.ServerVariables("URL")+"";
parentDir=fso.GetParentFolderName(parentDir);
if (parentDir.indexOf("example")!=parentDir.length-7){
//	Response.Write(parentDir+"<br>");
	parentDir=fso.GetParentFolderName(parentDir);
}
showCodePage=parentDir+"/showcode.asp";		// showCodePage="/jsBook/asp/example/showcode.asp"
%>
View source¡G
[<a target=_blank href="<%=showCodePage%>?source=<%=Request.ServerVariables("PATH_INFO")%>">Server-side script</a>]
[Client-side script (ctrl+u)]
<br>¦^¨ì¡u<a href="/jang/books/asp">JScript µ{¦¡³]­p»PÀ³¥Î¡G¦øªA¾¹ºÝ</a>¡v</b>
</html>

Hint
¨Ï¥Î <!--#include file="fileName"--> ¨Ó¥[¤JÀÉ®× fileName ªº¤è¦¡ºÙ¬° Sever-Side Include¡A²ºÙ SSI¡A±N·|¦b«á­±¦³¸Ô²Óªº»¡©ú¡C

­Y­n¨Ï¥Î ASP ¦L¥X¼Æ¦C¡uHello World!¡v¨Ã³v¦¸¼W¤j¨ä¦rÅé¡A¥i¨£¤U¦C½d¨Ò¡G

Example¡]hello02.asp¡^¡G

¤W­z½d¨Òªº­ì©lÀɦp¤U¡G

­ì©lÀÉ¡]hello02.asp¡^¡G¡]¦Ç¦â°Ï°ì«ö¨â¤U§Y¥i«þ¨©¡^
<%@language=jscript%>
<%title="§Q¥Î ASP ¦L¥X¤j¤p¤£¦Pªº¡uHello World!¡v"%>
<!--#include file="head.inc"-->
<hr>

<% for (i=1; i<=5; i++) {%>
	<font size=<%=i%>> Hello World! </font><br>
<%}%>

<hr>
<!--#include file="foot.inc"-->

Hint
¬°¸`¬Ù½g´T¡A¦b«áÄòªºµ{¦¡½X¦Cªí¸Ì¡A±N¤£¦AÅã¥Ü³o¨Ç ASP ½d¨Òºô­¶©Ò¥Î¨ìªº¼Ð·ÇÀÉÀY»PÀɧÀ¡A¦Ó¥H¡u...¡v¨ú¥N¤§¡C

¦b¤W­z½d¨Ò¤¤ªº for °j°é¡A§Ú­Ì¥æ¤e¨Ï¥Î¤F ASP ªºµ{¦¡½X©M HTML ªº­ì©l½X¡A³oºØ¥æ¤eªº¤è¦¡­Y¨Ï¥Î¤Ó¦h¡A·|³y¦¨µ{¦¡½X®Ä²vªº­°§C¡A¦]¦¹§Ú­Ì¤]¥i¥Hª½±µ±N¤§§ï¼g¦¨§¹¥þ¬O ASP ªºµ{¦¡½X¡A¨ä§e²{®ÄªG§¹¥þ¬Û¦P¡A­ì©l½X¦p¤U¡G

­ì©lÀÉ¡]hello03.asp¡^¡G¡]¦Ç¦â°Ï°ì«ö¨â¤U§Y¥i«þ¨©¡^
<%@language=jscript%>
<%title="§Q¥Î ASP ¦L¥X¤j¤p¤£¦Pªº¡uHello World!¡v"%>
<!--#include file="head.inc"-->
<hr>

<%
for (i=1; i<=5; i++){
	Response.Write("<font size=" + i + "> Hello World! </font><br>");
}
%>

<hr>
<!--#include file="foot.inc"-->

¦b Client Script¡A<script> ¼ÐÅÒªº¹w³]»y¨¥§Y¬° JavaScript ©Î JScript¡C¦Ó¦b Server Script¡A<script runat=server> ¼ÐÅÒªº¹w³]»y¨¥§Y¬° VBScript¡C¥i¾ã²z¦p¤Uªí¡G


Client-side Scripts Server-side Scripts
JavaScript
(JScript)
<script>...</script>
<script runat=server language=jscript>...</script>
VBScript <script language=vbscript>
<% ... %>
©Î
<script runat=server>...</script>

¦¹¥~¡AJScript ©M VBScript ¦³¤U¦C¤£¦P¤§³B¡A¦b¼¶¼g ASP µ{¦¡½X®É¡A­n¯S§O¤p¤ß¡G

¬°¤F«K©ó¤ñ¸û¡A¹ï©ó¥»¤p¸`ªº¦U­Ó½d¨Ò¡A§Ú­Ì¤]´£¨Ñ¬ÛÃöªº VBScript µ{¦¡½X¡A¨Ò¦p hello01.asp ¬O¨Ï¥Î JavaScript ªº ASP ºô­¶¡A«h hello01_vbs.asp «h¬O¨Ï¥Î VBScript ªº ASP ºô­¶¡A½Ð¨Ì¦¹Ãþ±À¡C
JScript µ{¦¡³]­p»PÀ³¥Î¡G¥Î©ó¦øªA¾¹ºÝªº ASP Àô¹Ò