¥»ºô¶¥H¥´³yµL»Ùê¾\Ū¬°¥Ø¼Ð¡A¥i¥H¥Î¥ô¦óÂsÄý¾¹¨ÓÆ[¬Ý¥»ºô¶
ASP(Active Server Pages) ¬O¥Ñ Microsoft ©Ò¶}µo¥X¨Óªº¤@ºØ§Þ³N¡A³oºØ§Þ³N³z¹L¦øªA¾¹ºÝ°õ¦æ´yz»y¨¥ (Server-Side Scripting) µ{¦¡½Xªº¹BºâÅÞ¿è¡A¨Ñ¦UºØÂsÄý¾¹¾\Äý¡C
³q±`¦b¼¶¼g ASP µ{¦¡®É¡A·|¿ï©w¨Ï¥Î¬Y¤@µ{¦¡»y¨¥¨Ó¼¶¼gµ{¦¡½X¡A¦p¡GVBScript, JavaScript, Perl, Tcl,
Pythonµ¥¡AµM«á¥Î¯S§Oªº¼ÐÅҨӰϹj³o¨Çµ{¦¡½X¡A¸m¤J¤@¯ëªºHTML¤å¥ó¤¤¡C¤@¥¹¨Ï¥ÎªÌ³z¹LÂsÄý¾¹¨ÓŪ¨ú ASP ÀÉ®×(§Y°ÆÀɦW¬° .asp
ªºÀÉ®×)®É¡A¦øªA¾¹´N·|°õ¦æÀɮפ¤ªºµ{¦¡½X¡AµM«á¦b¹Bºâµ²§ô«á¡A§â¹Bºâªºµ²ªG¥H¼Ð·ÇªºHTML®æ¦¡¶Ç¦^¨ìÂsÄý¾¹¡C
ASP¤´«]¦b¦w¸ËIISªººô¸ô¦øªA¾¹©M¦w¸ËMicrosoftªºPWS(Personal Web Server)¤~¯à¨Ï¥Î¡A¦ýChili!Soft¤½¥q¤w¸g¬ãµo¥i¥H¦bUnix¤ÎLinux¨Ï¥ÎªºASP¦øªA¾¹, ·sª©ªºBigApache®M¥ó¤]¦P®É¤ä´©ASP¤F,ÁÙ¦³InstantASP¡C
Windwos 2000 Professional ª©ªº IIS ¤]©M PWS ¤@¼Ë¤p¾¹¡A¦³10Ó³s½u¤Wªº¨î¡C¯uªºn¬[³]
IIS ºô¯¸¦øªA¾¹¡AÀ³¸Ó¦b¦³¦w¸Ë Win2000 Server ª©ªº¾÷¾¹¤W¦w¸Ë IIS¡C
±±¨î¥x
¡@·s¼W/²¾°£µ{¦¡
¡@¡@·s¼W/²¾°£Windows¤¸¥ó
¡@¡@¡@Internet Information Services(IIS)
¡@¡@¡@¡@¸Ô²Ó¸ê®Æ //SMTP Service,
ÀÉ®×Âà´«³q°T¨ó©w(FTP)¦øªA¾¹)
ºô¸ô¤WªºªÚ¾F/¥kÁä/¤º®e
¡@°Ï°ìºô¸ô/¥kÁä/¤º®e
¡@¡@ÂI¿ïFile and Printer Sharing for Microsoft Netowrks/¤º®e
¡@¡@¡@ÂI¿ïºô¸ôÀ³¥Îµ{¦¡ªº¸ê®Æ¶Ç°e¶q³Ì¤j¤Æ/½T©w
¡@¡@¡@
| §Q¥ÎInternetªA°ÈºÞ²zû | §Q¥ÎÂsÄý¾¹ |
|---|---|
| ±±¨î¥x ¡@¨t²ÎºÞ²z¤u¨ã ¡@¡@Internet ªA°ÈºÞ²zû |
http://localhost:2008/iis.asp
|
| «Å§i¨Ï¥Îvbscript | «Å§i¨Ï¥Îjscript |
|---|---|
| <%@language="vbscript"%> //ASPY±Ävbscript¥i¬Ù²¤«Å§i |
<%@language="javascript"%> |
| «Å§i¨Ï¥Îvbscript | «Å§i¨Ï¥Îjscript |
|---|---|
| <script language="vbscript" runat="Server"> |
<script language="javascript"
runat="Server"> |
| vbscript | jscript | ||
|---|---|---|---|
| ¥þ°ìÅÜ¼Æ | °Ï°ìÅÜ¼Æ | ¥þ°ìÅÜ¼Æ | °Ï°ìÅÜ¼Æ |
| public x=1 | dim x=1 private y=1 |
x=1; | var x=1; |
vbscriptªºÅܼƨϥεL¶·«Å§i, ¦ýYn±j¢«Å§i¥i¥Î
| Empty | ¼Æ¦r=0 ; ¦r¦ê=""¡A¥i¥Îisempty()§PÂ_¬O§_¬°empty¸ê®Æ«¬ºA | |
| Null | N/A¡A¥i¥Îisnull()§PÂ_¡AÁ×§K±q¸ê®Æ®w¨ú±onullÈ | |
| Boolean | True / False | |
| Byte | 0~255 | |
| Interger | -32768~32768 | |
| Currency | ||
| Long | ||
| Single | ||
| Double | ||
| Date/Time | ¤é´Á/®É¶¡ | ¦è¤¸100¦~1¤ë1¤é~¦è¤¸9999¦~12¤ë31¤é |
| String | ¦r¦ê | Y¦r¦ê¤¤¥]§t¦³Âù¤Þ¸¹«h my name is "peter". => "my name is ""peter""." |
| Object | ª«¥ó | N/A |
| Error | ¿ù»~¥N½X | N/A |
| HTML | vbscript | jscript | CSS |
|---|---|---|---|
| <!-- --> | ' , rem | // | /* */ |
| vbscript | jscript | ||
|---|---|---|---|
| µL¶Ç¦^È | ¦³¶Ç¦^È | µL¶Ç¦^È | ¦³¶Ç¦^È |
| sub ¨ç¼Æ¦W ¡@¡@return ¦^¶ÇÈ end sub |
function ¨ç¼Æ¦W (°Ñ¼Æ) ¡@¡@¨ç¼Æ¦W=¦^¶ÇÈ end function |
function ¨ç¼Æ¦W (°Ñ¼Æ) { ¡@¡@ } |
function ¨ç¼Æ¦W (°Ñ¼Æ) { ¡@¡@return ¦^¶ÇÈ } |
½d¨Ò : ¥Hvbscript¬°¥Dªºaspµ{¦¡, ©I¥svbscript©Îjavascript¨ç¼Æªº¤èªk
<html>
< head>
< %
sub vbproc(num1,num2)
Response.Write(num1*num2)
end sub
%>
< script language="javascript" runat="server">
function jsproc(num1,num2)
{
Response.Write(num1*num2)
}
< /script>
< /head>
<body>
< p>Result: <%call
vbproc(3,4)%></p>
< p>Result: <%call
jsproc(3,4)%></p>
< p>Result: <%vbproc 3,4%></p>
< p>Result: <%jsproc 3,4%></p>
< /body>
</html>
| vbscript | jscript | ||
|---|---|---|---|
| ½sĶ´Á¶¡©w¸q°}¦C | °õ¦æ´Á¶¡©w¸q°}¦C | ½sĶ´Á¶¡©w¸q°}¦C | °õ¦æ´Á¶¡©w¸q°}¦C |
|
dim myarray(10,10) Dim famname(6) , i For i = 1 to 6 |
redim myarray(ÅܼƦW) 'ÅܼƥN¤J°}¦C»Ý¦bredim¤~¯à¨Ï¥Î dim sick() redim sick(rst("totalrec")) //®Ú¾Ú¸ê®Æ®wµ§¼Æ©w ¸q°}¦C¤j¤p i=0 do while Not rst1.eof ¡@ sick( i ) = rst1("disease_cname") // ±NÄæ¦ì¸ê®Æ´`§Ç¥á¤J°}¦C¤¤ ¡@ rst1.movenext ¡@ i=i+1 loop |
myarray=new Array(10); var myarray=new Array(10); |
|
·í§ÚÌ¥´¶}ÂsÄý¾¹¨Ã¿é¤Jºô§}¡A¤]´N¬O¹ïWeb Server°e¥X Request n¨D¡AWeb Server·|¦Û°Ê¶i¦æ MIME §P§O¡A¨Ã±Ä¨úWindows¤@³eºD¥Îªº¤èªk¡A¤]´N¬O±qÀɮתºªþ¥[ÀɦW¥h§PÂ_n¥æµ¹þÓ DLL ¨Ó°õ¦æ©Î¸ÑĶ¡C ¦pªGµo²{n³B²zªºÀɮתþÀɦW¬O .ASP Ãþ«¬ªºÀɮסA´N±N¦¹Àɮץ浹 ASP.DLL ³oӰʺA³sµ²¨ç¦¡®w³B²z¡A¥¦·|±N¥ý±N Web Server ©Ò¦¬¨ìªº URI ³B²z¦n¡A¨ÃÀx¦s¨ì°O¾ÐÅé¸Ì±¡C
ASP °ÊºA¨ç¦¡®w¤@¥¹°õ¦æ¡A´N·|±`¾n¦b°O¾ÐÅ餺¡A¤@ª½¨ìÃö¾÷¬°¤î¤~µ²§ô(ºÙ¬° in-process)¡A¦]¦¹¥¦ªº°õ¦æ®Ä¯à»·°ª©óªþ¥[ÀɦW¬O exe ©Î com ªºÀ³¥Îµ{¦¡(³q±`³o¤@ÃþÀ³¥Îµ{¦¡ªº°õ¦æ¤è¦¡´NºÙ¬° out-process)¡C¥Ñ©ó¨Ï¥Î in-process ¤è¦¡³B²z¡A©Ò¥H ASP ªº¤º«Øª«¥ó Application ¤~¦³¿ìªk¹B§@¡C¤]¥¿¦]¬°ASPÄÝ©ó in-process ªºÃö«Y¡A©Ò¥H¦pªG·QnÅܧó ASP ¬ÛÃöªº¨t²Î³]©w¡A¥²¶·±N¦øªA¾¹«·s¶}¾÷¤~·|¥Í®Ä¡C
ASP ¶È¯à¥H IUSR_WebServer ³oÓ±b¸¹¨Ó°õ¦æ¡A³y¦¨³\¦h¦øªA¾¹ºÞ²zªº¤u§@¥²¶·¥H administrator Åv¨Ó°õ¦æ¡A©Ò¥H ASP µLªk©I¥s WindowsAPI ¨Ó¨ú±o¨t²Î±b¸¹©MÀ³¥Î¦b¦øªA¾¹ºÞ²z¤u§@¤W¡A¨Ò¦p¡G±b¸¹ºÞ²z¡B³]©wÀɮץؿýÅv¡B×§ï¨t²Îµn¿ý......µ¥µ¥¡C
ASP ´£¨Ñ¤F¤»Ó¤º«Øªºª«¥ó¡Aµ{¦¡³]p®v³z¹L³o¨Çª«¥óªº¤¶±¡A¨Ó¼¶¼g ASP µ{¦¡¡C¥H¤U¬O³o¤»Óª«¥óªºÂ²¤¶¡G
| Response | ´£¨Ñ§A¿é¥X¹Bºâµ²ªG¨ìÂsÄý¾¹ªº¤¶±¡C |
|---|---|
| Request | ´£¨Ñ§AŪ¨úÂsÄý¾¹©Ò¶Ç¨Óªº¸ê®Æ¤Î»P¦øªA¾¹¦³ÃöÅܼƪº¤¶±¡C |
| Server |
»P¦øªA¾¹¦³Ãöªº¬ÛÃö³]©w¡A«h¬O³z¹L Server ª«¥ó¨Ó»P Web Server
·¾³q¡A¨Ò¦p¡G©I¥s¦Û®aªº¨ç¦¡®w¡B×§ï Timeout ³]©w¡BŪ¨ú¥D¥Ø¿ýªºµ´¹ï¸ô®|¡B¨Ï¥Î HTML ©Î URL ½s½X(Encode) ªk¨Ó³B²z
Response ÅܼƵ¥¡C |
| Session | Session
ª«¥ó¥Î¨ÓºûÅ@¨CÓÂsÄý¾¹³s½uªº¸ê°T¡A·í§ÚÌnÅýASPµ{¦¡¯à°÷®Ú¾Ú¤£¦P¨¤À°õ¦æ¤£¦P¥\¯àªº®ÉÔ¡A´N·|¨Ï¥Î Session
ÅܼơC¦¹Åܼƪº¦³®Ä®É¶¡¹w³]¬O20¤ÀÄÁ¡A¦ý¬O¦³¡©³s¿ï±o³s¥ô¡ªªº¯S©Ê¡A¤]´N¬O»¡·íºô¶«·s¾ã²z(Reload)«á¡ASessionªº¦³®Ä®É¶¡¤]¸òµÛ©µªø¡C
¦ý³Ìªø¤]¥u¯àºû«ù¨ìÂsÄý¾¹Ãö³¬¡A©Î²M°£ cookie ¬°¤î¡C ·í¨Ï¥ÎªÌ»P¦øªA¾¹³s½u®É¡A´£¨Ñ¦s¨ú¦³Ãö³o¦¸³s½u©Ò¨Ï¥ÎÅܼƪº¤¶±¡C |
| Application |
·íWeb Server¶}¾÷¶]°_¨Ó«á¡Aº¥ý°õ¦æªº¬O
Applicationª«¥ó¡A¥¦©w¸q¤F±Ò°ÊIIS«áWeb¯¸¥x¹B§@©Ò»Ýªº¾ãÅéÅܼơA¨Ã¥B·|§â³o¨ÇÅܼƤ@ª½©ñ¦b°O¾ÐÅ餤¡Aµ¥«ÝASPµ{¦¡¦s¨ú¡A¤@ª½¨ìIIS
Shutdown¤~®ø¥¢¡C |
| ObjectContext | ObjectContext ª«¥ó«h¬O»P CGI ¹B§@¾÷¨î¤£¬Û¤zªºª«¥ó¡A¥¦¥Î¨ÓºÞ²z MTS¡]Microsoft
Transaction Server¡^¡CMTS ¤¹³\¦b°õ¦æµ{¦¡«e¥ý¬ö¿ý¦øªA¾¹ª¬ºA¡A¦pªG¦³³¡¤Àµ{¦¡°õ¦æ¥¢±Ñ¡A«h¥i¥H°h¦^¨ì
¥ý«eªºª¬ºA¡A¥u¦³·í©Ò¦³¬ÛÃöµ{¦¡¶]§¹¥B°õ¦æ¦¨¥\«á¡A¤~·|¯u¥¿µn¿ý§ïÅܫ᪺¦øªA¾¹ª¬ºA¡A´N¹³¬O§Ú̬° ASP
µ{¦¡³]©w¤FÁÙìÂI¤@¼Ë¡A¥i¥HÁ×§Kµ{¦¡°õ¦æ¥¢±Ñ¤§«á¡An¦Û¦æ´_ì¦øªA¾¹ª¬ºAªº³Â·Ð¡C MTS ³q±`¨Ï¥Î¦b¦³»Ýn¸û°ªªº¦w¥þ©Ê¡B©M¦hÓµ{¦¡»Ýn§@¡©¦P¨B¡ªªº³õ¦X¡A¤@¯ë§Ú̬O¥Î¤£¨ìªº¡C¥Ñ©ó MTS ¹ï©ó°O¾ÐÅ骺»Ý¨D¸û°ª¡A¦pªG§Ú̺ô¯¸³]p¤W¨S¦³³oÓ»Ýn¡A«o¬G·N¥h¨Ï¥Î¥¦¡A¨º»ò±N·|¥Õ¥Õ®ö¶O³\¦hWeb Server ªº¨t²Î¸ê·½¡C ´£¨Ñ¨Ï¥Î Microsoft Transaction Server ª«¥óªº¤¶±¡C |
¥i²¼g¬°<%="¿é¥X"%>
|
vbscript |
jscript |
| word="±z¦n" response.write word |
word="±z¦n"; response.write(word); |
| Tips1 : ¨Ï¥Î Server.HtmlEncode() ¨ÓÅã¥Ühtml¦r¤¸ | |
|---|---|
| response.write Server.HtmlEncode("We sell the <<Best!>> products!") | |
| Tips2 : ¥i¨Ï¥Î2ºØ¤è¦¡¨ÓÅã¥ÜÂù¤Þ¸¹ | |
| ¨Ï¥Î³sÄòªºÂù¤Þ¸¹, ·|³Qµø¬°¤@ÓÂù¤Þ¸¹ | <% response.write "He said, ""This doesn't work!"" " %> |
| ¨Ï¥Î chr(34) ¥N´ÀÂù¤Þ¸¹¨Ã¥H & ¨Ó³s±µ¦r¦ê | <% response.write "He said," & chr(34) & "This doesn't work!" & chr(34) %> |
|
vbscript |
jscript |
| response.redirect "abc.htm" | response.redirect("abc.htm"); |
|
vbscript |
jscript |
| response.end | response.end(); |
Cookies¬O¥ÑNetscapeµo®i¨Ó×¥¿Web Server»PBrowser¤§¶¡¤¬°Ê¤£¨¬ªº°ÝÃD, ¥]§t¤FSession cookie¤ÎPersistent cookie(¥Ã¤[)¨âºØ«¬ºA , ¨Ã¦³¨î¦p¤U
| Session cookie | Persistent cookie |
|---|---|
| response.cookies("name") = "Peter" | response.cookies("name") = "Peter" response.cookies("name").expires = "July 4, 2005" |
°£¤F¥ÑIIS¥i³]©wÅýInternet Explorer¤£cache¥H¥~¡A¥i¥H¥Î¥H¤Uªºaspµ{¦¡½X¡AÆ[©À¤W¬O§Q¥ÎHTTP header±±¨îcache¡C
¥H¤Uscript¥²¶·
°õ¦æ¦bHTTP 1.1 server ¡A¾A¥Î©óInternet Explorer 4.0¥H¤Wª©¥»¡C¦b¨C¤@¶ asp ªº¶}ÀY¥[¤W¤U¦Cµ{¦¡½X
<%
Response.CacheControl = "no-cache"
Response.AddHeader "Pragma", "no-cache"
Response.Expires = -1
Response.ExpiresAbsolute = Now() - 0.1
%>
nÁ×§KClientºÝ´Ý¦sªº¸ê®Æ¡AÁÙ¥i¥H¦b¨C¦¸¶}±Òºô¶ªº¶WÃìµ²®É±aӰѼơA¨Ã¥B¨C¦¸³£¤£¦P
<%=request("¤WÓºô¶¶Ç¨ÓªºÅܼÆ")%> ,Y¹J¦³¬Û¦PÅܼƦWºÙ,¨äcollectionªºÀu¥ý¶¶§Ç¬°
| §Q¥Î a ¼ÐÅÒ±NÅܼƥHurl¶Ç°e | ±µ¦¬ÅÜ¼Æ |
|---|---|
|
<a href="answer.asp?apple=red&orange=blue"> ¤ôªG</a> str="this is a apple" |
apple=request.querystring("apple") fruit=request.querystring("fruit") |
| §Q¥Îªí³æ¶Ç°eÅÜ¼Æ | ±µ¦¬ÅÜ¼Æ |
|---|---|
|
<form method="post" action="login.asp"> |
<% |
| Tips : ¶Ç¦^©Ò¦³ªí³æÄæ¦ì,´î¤Ö¨Ï¥ÎªÌ«½Æ¿é¤J |
|---|
|
<form method="post" action="login.asp"> |
|
¥Ø«eºô¶ªºµ{¦¡¦WºÙ script_name Yn¶Ç¦^¯u¹ê¸ô®|¡A¦³¢±ºØ¤èªk
|
<% request.ServerVariables("script_name") %> <% |
| µn¤JªÌ«e¤@ÓÂsÄýªººô¶ http_referer ¡@¡@¶Ç¦^ºô¶¦WºÙ |
<% request.ServerVariables("http_referer") %> |
| µn¤JªÌªºIP remote_addr ¡@¡@¶Ç¦^IP |
<% request.ServerVariables("remote_addr") %> |
| µn¤JªÌªºÂsÄý¾¹ http_user_agent ¡@¡@¶Ç¦^ÂsÄý¾¹«¬ºA |
<% request.ServerVariables("http_user_agent") %> |
| ÅÜ¼Æ | °}¦C |
|---|---|
| <% session("name") = "Peter"
%> //¦p¦ó¨ú¥Î©O <% response.write session("name") %> |
<% dim cart(20) cart(0) = "¥úºÐ¤ù" cart(1) = "¿N¿ý¾÷" session("cart") = cart %> //¦p¦ó¨ú¥Î©O <% response.write session("cart")(1) %> |
Session ª«¥ó´£¨Ñ¥|ºØÄÝ©Ê(Properties)¡B¨âӨƥó(Events)¡B¤@ºØ¤èªk(Method)»P¨âÓ¶°¦X(Collections)¡A¦Cªí¦p¤U¡G
| ©Ê½è | »¡©ú | ½d¨Ò |
|---|---|---|
| CodePage | CodePageªºÃѧO½X | |
| LCID | LCIDªºÃѧO½X | |
| SessionID | ¥Î¤áºÝªºSessionID,¨ã°ß¤@©Ê | <%= Session.SessionID %> |
| Timeout | Sessionª«¥óªº¦³®Ä®É¶¡(¥H¤ÀÄÁ¬°³æ¦ì)¡A¹w³]¬°20¤ÀÄÁ | <% Session.Timeout = 60 %> |
| ¨Æ¥ó | »¡©ú | ½d¨Ò |
|---|---|---|
| OnStart | ±Ò°Ê¤@Ó Session ª«¥ó®É©ÒIJµoªº¨ç¦¡¡A¦¹¨ç¦¡¥²¶·©ñ¦b global.asa ÀÉ®× | |
| OnEnd | µ²§ô¤@Ó Session ª«¥ó®É©ÒIJµoªº¨ç¦¡¡A¦¹¨ç¦¡¥²¶·©ñ¦b global.asa ÀÉ®× |
| ¤èªk | »¡©ú | ½d¨Ò |
|---|---|---|
| Abandon | §R°£ Session ª«¥ó©Ò§tªº©Ò¦³¸ê°T | <% Session.Abandon %> |
| Contents.Remove(item or index) | §R°£ Contents ¶°¦X¤¤ªº¬Y¤@Ó¶µ¥Ø | |
| Contents.RemoveAll | §R°£ Contents ¶°¦X¤¤ªº©Ò¦³¶µ¥Ø |
| ¶°¦X | »¡©ú | ½d¨Ò |
|---|---|---|
| Contents | ©Ò¦³¥[¦b Session ª«¥óªºÅܼƶ°¦X | |
| StaticObjects | ©Ò¦³¦b¨Ï¥ÎªÌ¼h¯Å¡]Session Scope¡^©Ò«Å§iªºª«¥ó¶°¦X |
| vbscript | set
conn=server.createobject("adodb.connection") conn.open "driver={SQL SERVER};server=163.17.1.25;uid=root;pwd=root;database=test" |
| jscript | conn=server.createobject("adodb.connection"); conn.open("driver={SQL SERVER};server=163.17.1.25;uid=root;pwd=root;database=test"); |
| vbscript | sql_str="select * from
score.dbo.asco"&y1&" a " set rst=server.createobject("adodb.recordset") rst.open sql_str,conn,1 |
| jscript | sql_str="select * from
score.dbo.asco"&y1&" a "; rst=server.createobject("adodb.recordset"); rst.open(sql_str,conn,1); |
| vbscript | sql_str="select * from
score.dbo.asco91" set rst=conn.execute(sql_str) |
| jscript | sql_str="select * from
score.dbo.asco91"; rst=conn.execute(sql_str); |
| vbscript | rst.Close; set rst=null; conn.Close; set conn=null; |
| jscript | rst.Close(); rst=null; conn.Close(); conn=null; |
§R°£ ALLEN ·|û°O¿ý : DELETE FROM tblMember WHERE vch_Name='ALLEN'
§R°£©Ò¦³¨k©Ê°O¿ý : DELETE FROM tblMember WHERE i_Sex=1
§R°£¥X¥Í¤é´Á¦b2000/1/18 ¥H«áªº·|û°O¿ý : DELETE FROM tblMember WHERE dt_Birth
> '2002/1/18'
¹ï©óSQL»yªk¿ù»~ªº³¡¤À¡A§ÚÌ¥i¦L¥XSQL¦r¦ê¨Ó§PÂ_¡C¨Ò¦p¡G
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
'¸ê®Æ®w¾Þ§@Ãþ§O
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
'¦WºÙ¡GClass_DBOperate
'ª©¥»¡G0.2
'§@ªÌ¡Gqihangnet
'§ó·s¡G2005¦~6¤ë14¤é
'§@¥Î¡GŠé¤Æ¸ê®Æ®w¾Þ§@ªº¬yµ{
'±ÂÅv¡G§K…d¨Ï¥Î
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Class Class_DBOperate
'**ÅܼƩw¸q**
'Conn: ¸ê®Æ®w³s±µª«¥ó
'Conn_Str:¸ê®Æ®w³sµ²¦r¦ê
Private Conn,Conn_Str
'**¨p¦³¤èªk**
'ªì©l¤Æ
Private Sub Class_Initialize()
Set Conn = Server.CreateObject("ADODB.Connection")
End Sub
'²×¤î
Private Sub Class_Teriminate()
Set Conn = Nothing
End Sub
'**ÄÝ©Ê**
'¿é¥X¸ê®Æ®w³s±µ¦r¦ê
' ªð¦^ÈÃþ«¬¡Gstring
Property Get ConnectString
ConnectString = Conn_Str
End Property
'³]¸m¸ê®Æ®w³s±µ¦r¦ê
' °Ñ¼Æ¡Gstr --- string
Property Let ConnectString(str)
Conn_Str = str
End Property
'**¤½¶}¤èªk (¨Æ¥ó)**
'¶}±Ò¸ê®Æ®w
Public Sub DB_Open()
Conn.ConnectionString = Conn_Str
Conn.Open
End Sub
'Ãö³¬¸ê®Æ®w
Public Sub DB_Close()
Conn.Close
End Sub
'¸ê®Æ®w¬d†R¡]SQL‡N¥y¡^
' °Ñ¼Æ¤ÎÃþ§O¡Gsql ---- string
' ªð¦^ÈÃþ«¬¡G°O¿ý¶°
' «e´£¡G¸ê®Æ®wª¬ºA¬°¥´¶}
Public Function DB_Select(sql)
Set DB_Select = Conn.Execute(sql)
End Function
'¸ê®Æ®w°õ¦æ¡]SQL‡N¥y¡^
' °Ñ¼Æ¤ÎÃþ§O¡Gsql ---- string
' ªð¦^ÈÃþ«¬¡G¾ã¼Æ
' ªð¦^ȧt¸q¡G¨ü¼vÅT¦æ¼Æ
' «e´£¡G¸ê®Æ®wª¬ºA¬°¥´¶}
Public Function DB_Excute(sql)
Dim rs_affected
Conn.Execute sql,rs_affected
DB_Excute = rs_affected
End Function
End Class
¥H¤U¬°¨Ï¥Î½d¨Ò
Dim rdb : Set rdb = New Class_DBOperate ' ªì©l¤Æ¤@Ó rdb ª«¥ó¡A¨Ã©I¥s New Class_DBOperate Ãþ§Oªº Class_Initialize ¤èªk
rdb.ConnectString = "Provider=SQLOLEDB;driver={sql server};database=car;server=127.0.0.1;uid=sa;pwd=sapasswd"
rdb.DB_Open
Dim rst, sqlstr
sqlstr="select * from op"
set rst =rdb.DB_Select( sqlstr )
if not rst.eof then
while not rst.eof
response.write rst(0) & rst(1) & "<br />"
rst.movenext
wend
end if
rst.close
set rst=nothing
rdb.DB_Close
Set rdb = Nothing ' ©I¥s New Class_DBOperate Ãþ§Oªº©I¥s Class_Terminate ¤èªk
<SCRIPT LANGUAGE="VBSCRIPT" RUNAT="SERVER">
Function GetRs(SQL)
Dim Rs, Conn
Set Rs=Server.CreateObject("ADODB.Recordset")
Set Conn = GetCn()
Rs.Open SQL, Conn, 3
Set GetRs = Rs
Set Rs = Nothing
Set Conn = Nothing
End Function
Function GetCn()
Dim Conn
Set Conn=Server.CreateObject("ADODB.Connection")
Conn.Open GetConProfile()
Set GetCn = Conn
Set Conn = Nothing
End Function
Function GetConProfile()
Dim SQLServer, SQLLogin, SQLPwd, SQLDB
SQLServer="127.0.0.1"
SQLLogin="sa"
SQLPwd="sapasswd"
SQLDB="car"
GetConProfile = "Driver={SQL Server};Server=" & SQLServer & ";Uid=" & SQLLogin & ";Pwd=" & Trim(SQLPwd) & ";Database=" & SQLDB & ""
End Function
Function Execute(SQL)
Dim Cm, Conn, Errors
Set Cm=Server.CreateObject("ADODB.Command")
Set Conn = GetCn()
Cm.ActiveConnection = Conn
Cm.Prepared = True
Cm.CommandText = SQL
Cm.CommandType = 1
Cm.Execute
Set Errors = Conn.Errors
Execute = CStr(Conn.Errors.count)
Set Cm = Nothing
Set Conn = Nothing
End Function
Function GetCm()
Dim Cm, Conn
Set Cm=Server.CreateObject("ADODB.Command")
Set Conn = GetCn()
Cm.ActiveConnection = Conn
Set GetCm = Cm
End Function
</SCRIPT>
¥H¤U¬°¨Ï¥Î½d¨Ò
Dim rst, sqlstr
sqlstr="select * from op"
set rst = GetRs( sqlstr )
if not rst.eof then
while not rst.eof
response.write rst(0) & rst(1) & "<br />"
rst.movenext
wend
end if
If isobject("rst") Then
rst.close
End If
set rst=nothing
¨Ì¾Ú¹ï¹Bºâ¦¡ªºµû¦ôµ²ªG¡Aµ²ªG¬°¯u·|¶Ç¦^²Ä2ӰѼơAµ²ªG¬°°²·|¶Ç¦^²Ä3ӰѼơC
<SCRIPT LANGUAGE="VBSCRIPT" RUNAT="SERVER">
Function IIf( exp, rst1, rst2)
If exp Then IIf = rst1 Else IIf = rst2
End Function
</SCRIPT>
¨¤ß»Ùê<input type="checkbox" name="ishandicap" id="ishandicap" <%=iif(ishandicap,"checked","")%> />
¶Ç¦^ post ©Î get ¤èªk©Ò¦¬¨ìªº©Ò¦³°Ñ¼Æ
Dim obj
for each obj in Request.Form
response.write obj & "=" & Request.Form(obj) & "<br />"
next
Dim obj
for each obj in Request.QuerString
response.write obj & "=" & Request.QuerString(obj) & "<br />"
next
<form method="POST"
name="form1">
......
<input type="button" value="del" name="B1"
onclick="document.form1.action='del.asp'; document.form1.submit()"
>
<input type="button" value="view" name="B2"
onclick="document.form1.action='view.asp';document.form1.submit()">
<input type="button" value="addnew" name="B3"
onclick="document.form1.action='addnew.asp';
document.form1.submit()">
</form>
response.write "this is a" &_
"asp program test."
¦pªG¥ú¬O¥ÎRemote_Host©ÎRemote_Addr, ¨º§A®³¨ìªº¥u¬O¹ê»Ú¦s¨úªº¥D¾÷¦Ó¤w, ¦pªG§O¤H³z¹LProxy¨ÓŪ¨ú§Aªºµ{¦¡¨º§A´N°»´ú¤£¨ì¥¿½TªºIP¤F. Request.ServerVariables("HTTP_X_FORWARDED_FOR") , ³o¬q»yªk¥Nªíªº¬O°»´ú³o¥x¥D¾÷«áºÝ¨Ï¥ÎªºIP, ¦pProxy«áºÝªº¨Ï¥ÎªÌ´N¥i¥H¥Î³oÓ»yªk°»´ú, ¦pªGRemote_Addr°»´úªº¬O¯uªºIP¨º³oÓÈ·|¬OªÅªº.
dim ip
if Request.ServerVariables("HTTP_X_FORWARDED_FOR")<>""
then
¡@ip=Request.ServerVariables("HTTP_X_FORWARDED_FOR")
else
¡@ip=Request.ServerVariables("REMOTE_ADDR")
end if
¤º§tASP°ß¤@ªº¢³Ó¨Æ¥óµ{§Ç
<script language="vbscript"
runat="Server"> //¦¹½d¨Ò¬°pºâ¤W½u¤H¼Æ
Sub Application_OnStart
¡@Application("OnlineCount") = 0
End Sub
Sub Application_OnEnd
End Sub
Sub Session_OnStart
¡@Application.Lock
¡@Application("OnlineCount") = Application("OnlineCount") + 1
¡@Application.UnLock
End Sub
Sub Session_OnEnd
¡@Application.Lock
¡@Application("OnlineCount") = Application("OnlineCount")
- 1
¡@Application.UnLock
End Sub
</script>
¥D ºô ¯¸¡Ghttp://peterju.notlong.com (¥Ø«eÂà§}¦Ü http://irw.ncut.edu.tw/peterju/)