📄 three_layers.html
字号:
<HTML>
<HEAD>
<TITLE>
Introduction to Microsoft DNA|
Understanding the 3 Layers of an Applicaiton
</TITLE>
<!-- START META TAG SSI -->
<META HTTP-EQUIV = "Description" NAME = "Description"
CONTENT = "You have reached Extropia. This
site contains open source web applications
and information about purchasing support licenses and
documentation for the applications as well as
information about custom web application
development. Thanks for stopping by!">
<META HTTP-EQUIV = "Keywords" NAME = "Keywords"
CONTENT = "CGI, ASP, XML, HTML, DHTML, Java,
JavaScript, VBScript, SQL, UNIX, Perl, Perl 5,
ModPerl, Web, Web Applications, server side application,
Selena Sol, Eric Tachibana, Gunther Birznieks,
Instant Web Scripts with CGI/Perl, WebStore,
Web Store, Chat, BBS, Bulletin Board, Database,
Web Database, Real-Time chat, Serveletts,
WebWare, Extropy, Extropia, Open Source, Freeware,
Shareware, programming, web programming, web
programmer, web developer, search engine">
<!-- END META TAG SSI -->
<!-- START STYLE_SHEET_BASIC SSI -->
<STYLE>
a { text-decoration: none }
a:hover { color:#ff3333;
text-decoration: underline }
</STYLE>
<SCRIPT language = "javascript">
<!--//
function preload() {
this.length = preload.arguments.length;
for (var i = 0; i < this.length; i++) {
this[i+1] = new Image();
this[i+1].src = preload.arguments[i];
}
}
if (document.images) {
var pic1 = new preload(
"/graphics/template/top/tagabout.gif",
"/graphics/template/top/tagclients.gif",
"/graphics/template/top/tagproducts.gif",
"/graphics/template/top/tagcontact.gif",
"/graphics/template/top/tagdload.gif",
"/graphics/template/top/tagsupport.gif",
"/graphics/template/top/tagtutorials.gif",
"/graphics/template/top/tagdevelop.gif",
"/graphics/template/top/tagnews.gif",
"/graphics/template/top/tech1.gif",
"/graphics/template/top/biz1.gif",
"/graphics/template/top/dload1.gif",
"/graphics/template/top/support1.gif",
"/graphics/template/top/tutorials1.gif",
"/graphics/template/top/develop1.gif",
"/graphics/template/top/news1.gif",
"/graphics/template/top/about1.gif",
"/graphics/template/top/clients1.gif",
"/graphics/template/top/products1.gif",
"/graphics/template/top/contact1.gif"
)
}
function select(i,newsrc) {
if (document.images) {
document.images[i].src = newsrc ;
}
}
//-->
</SCRIPT>
<!-- END STYLE_SHEET_BASIC SSI -->
</HEAD>
<BODY BGCOLOR = "FFFFFF" TEXT = "000000">
<!-- #### START NAVIGATION TEMPLATE TOP ##### -->
<BODY BGCOLOR = "#FFFFFF" LINK = "#CC0000" ALINK = "#660000"
VLINK = "#990000" MARGINWIDTH = "0" MARGINHEIGHT = "0"
VSPACE = "0" HSPACE = "0">
<TABLE WIDTH = "100%" BORDER = "0" CELLPADDING = "0"
CELLSPACING = "0" ALIGN = "CENTER">
<TR>
<TD>
<!-- #### LOGO & CAPTION BAR START HERE #### -->
<TABLE WIDTH = "100%" BORDER = "0" CELLPADDING = "0"
CELLSPACING = "0" ALIGN = "CENTER">
<TR>
<A NAME = "#top">
<TD><A HREF = "javascript:if(confirm('http://www.extropia.com/index.html \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/index.html'" tppabs="http://www.extropia.com/index.html"><IMG SRC = "logo.gif" tppabs="http://www.extropia.com/graphics/template/logo.gif"
ALT = "eXtropia: the open web technology company"
BORDER = "0" HEIGHT = "40" WIDTH = "353"></A></TD>
<TD WIDTH = "100%" BGCOLOR = "#FFFFFF"> </TD>
<TD><IMG NAME = "caption" SRC = "logo1.gif" tppabs="http://www.extropia.com/graphics/template/logo1.gif"
HEIGHT = "40" WIDTH = "281"></TD>
</TR>
</TABLE>
<!-- #### LOGO & CAPTION BAR END HERE #### -->
<!-- #### BEGIN THE LIST OF TECHNOLOGY LINKS #### -->
<TABLE WIDTH = "100%" BORDER = "0" CELLPADDING = "0"
CELLSPACING = "0" BGCOLOR = "#000000">
<TR>
<TD><IMG BORDER = "0" SRC = "tech1.gif" tppabs="http://www.extropia.com/graphics/template/tech1.gif"
ALT = "technology" HEIGHT = "19" WIDTH = "133"></TD>
<TD WIDTH = "100%"> </TD>
<TD><A HREF = "javascript:if(confirm('http://www.extropia.com/freedownloads.html \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/freedownloads.html'" tppabs="http://www.extropia.com/freedownloads.html"
onMouseOver = "select('download','/graphics/template/dload1.gif'); select('caption','/graphics/template/tagdload.gif');"
onMouseOut = "select('download', '/graphics/template/dload0.gif'); select('caption','/graphics/template/logo1.gif');">
<IMG SRC = "dload0.gif" tppabs="http://www.extropia.com/graphics/template/dload0.gif" NAME = "download"
BORDER = "0" ALT = "free downloads" HEIGHT = "19" WIDTH = "93"></A></TD>
<TD><A HREF = "javascript:if(confirm('http://www.extropia.com/freesupport.html \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/freesupport.html'" tppabs="http://www.extropia.com/freesupport.html"
onMouseOver = "select('support','/graphics/template/support1.gif'); select('caption','/graphics/template/tagsupport.gif');"
onMouseOut = "select('support','/graphics/template/support0.gif'); select('caption','/graphics/template/logo1.gif');">
<IMG SRC = "support0.gif" tppabs="http://www.extropia.com/graphics/template/support0.gif" NAME = "support"
BORDER = "0" ALT = "support" HEIGHT = "19" WIDTH = "91"></A></TD>
<TD><A HREF = "javascript:if(confirm('http://www.extropia.com/tutorials.html \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/tutorials.html'" tppabs="http://www.extropia.com/tutorials.html"
onMouseOver = "select('tutorials','/graphics/template/tutorials1.gif'); select('caption','/graphics/template/tagtutorials.gif');"
onMouseOut = "select('tutorials','/graphics/template/tutorials0.gif'); select('caption','/graphics/template/logo1.gif');">
<IMG SRC = "tutorials0.gif" tppabs="http://www.extropia.com/graphics/template/tutorials0.gif" NAME = "tutorials"
BORDER = "0" ALT = "tutorials" HEIGHT = "19" WIDTH = "95"></A></TD>
<TD><A HREF = "javascript:if(confirm('http://www.extropia.com/development/development.html \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/development/development.html'" tppabs="http://www.extropia.com/development/development.html"
onMouseOver = "select('development','/graphics/template/develop1.gif'); select('caption','/graphics/template/tagdevelop.gif');"
onMouseOut = "select('development','/graphics/template/develop0.gif'); select('caption','/graphics/template/logo1.gif');">
<IMG SRC = "develop0.gif" tppabs="http://www.extropia.com/graphics/template/develop0.gif" NAME = "development"
BORDER = "0" ALT = "development" HEIGHT = "19" WIDTH = "93"></A></TD>
<TD><A HREF = "javascript:if(confirm('http://www.extropia.com/news.html \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/news.html'" tppabs="http://www.extropia.com/news.html"
onMouseOver = "select('news','/graphics/template/news1.gif'); select('caption','/graphics/template/tagnews.gif');"
onMouseOut = "select('news','/graphics/template/news0.gif'); select('caption','/graphics/template/logo1.gif');">
<IMG SRC = "news0.gif" tppabs="http://www.extropia.com/graphics/template/news0.gif" NAME = "news"
BORDER = "0" ALT = "news" HEIGHT = "19" WIDTH = "93"></A></TD>
</TR>
</TABLE>
<!-- #### ENDTHE LIST OF TECHNOLOGY LINKS #### -->
<!-- #### BEGIN THE LIST OF BUSINESS LINKS #### -->
<TABLE WIDTH = "100%" BORDER = "0" CELLPADDING = "0"
CELLSPACING = "0" BGCOLOR = "#AFAFAF">
<TR>
<TD><IMG BORDER = "0" SRC = "biz1.gif" tppabs="http://www.extropia.com/graphics/template/biz1.gif" ALT = "business"
HEIGHT = "19" WIDTH = "133"></TD>
<TD WIDTH = "100%"> </TD>
<TD><A HREF = "javascript:if(confirm('http://www.extropia.com/aboutus/index.html \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/aboutus/index.html'" tppabs="http://www.extropia.com/aboutus/index.html"
onMouseOver = "select('about','/graphics/template/about1.gif'); select('caption','/graphics/template/tagabout.gif');"
onMouseOut = "select('about','/graphics/template/about0.gif'); select('caption','/graphics/template/logo1.gif');">
<IMG SRC = "about0.gif" tppabs="http://www.extropia.com/graphics/template/about0.gif" NAME = "about"
BORDER = "0" ALT = "about us" HEIGHT = "19" WIDTH = "118"></A></TD>
<TD><A HREF = "javascript:if(confirm('http://www.extropia.com/clients/index.html \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/clients/index.html'" tppabs="http://www.extropia.com/clients/index.html"
onMouseOver = "select('clients','/graphics/template/clients1.gif'); select('caption','/graphics/template/tagclients.gif');"
onMouseOut = "select('clients','/graphics/template/clients0.gif'); select('caption','/graphics/template/logo1.gif');">
<IMG SRC = "clients0.gif" tppabs="http://www.extropia.com/graphics/template/clients0.gif" NAME = "clients"
BORDER = "0" ALT = "clients & partners" HEIGHT = "19" WIDTH = "118"></A></TD>
<TD><A HREF = "javascript:if(confirm('http://www.extropia.com/services.html \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/services.html'" tppabs="http://www.extropia.com/services.html"
onMouseOver = "select('products','/graphics/template/products1.gif'); select('caption','/graphics/template/tagproducts.gif');"
onMouseOut = "select('products','/graphics/template/products0.gif'); select('caption','/graphics/template/logo1.gif');">
<IMG SRC = "products0.gif" tppabs="http://www.extropia.com/graphics/template/products0.gif" NAME = "products"
BORDER = "0" ALT = "products & services" HEIGHT = "19" WIDTH = "118"></A></TD>
<TD><A HREF = "javascript:if(confirm('http://www.extropia.com/contactus.html \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/contactus.html'" tppabs="http://www.extropia.com/contactus.html"
onMouseOver = "select('contact','/graphics/template/contact1.gif'); select('caption','/graphics/template/tagcontact.gif');"
onMouseOut = "select('contact','/graphics/template/contact0.gif'); select('caption','/graphics/template/logo1.gif');">
<IMG SRC = "contact0.gif" tppabs="http://www.extropia.com/graphics/template/contact0.gif" NAME = "contact"
BORDER = "0" ALT = "contact us" HEIGHT = "19" WIDTH = "136"></A></TD>
</TR>
</TABLE>
</TD>
</TR>
<TR>
<TD>
<!-- #### END THE LIST OF BUSINESS LINKS #### -->
<!-- #### START MAIN PAGE #### -->
<TABLE WIDTH = "100%" BORDER = "0" CELLPADDING = "0"
CELLSPACING = "0" ALIGN = "CENTER">
<TR>
<TD VALIGN = "TOP">
<!-- #### LEFT ORANGE BAR, ALL SUB-CONTENTS INSERT HERE #### -->
<TABLE BORDER = "0" WIDTH = "100%"
CELLPADDING = "10" CELLSPACING = "0">
<TR>
<TD WIDTH = "150" HEIGHT = "300" BGCOLOR = "#FF9900"
ALIGN = "LEFT" VALIGN = "TOP">
<!-- ##### START TUTORIALS NAVIGATION ssi -->
<!-- BEGIN PERL RESOURCES TABLE -->
<IMG SRC = "clear_dot.gif" tppabs="http://www.extropia.com/graphics/clear_dot.gif" BORDER = "0" WIDTH = "150"
HEIGHT = "1">
<CENTER>
<TABLE BORDER = "0" CELLPADDING = "2" CELLSPACING = "0"
BGCOLOR = "#CC0000" WIDTH = "90%">
<TR>
<TD>
<CENTER>
<TABLE BORDER = "0" CELLPADDING = "1" CELLSPACING = "0"
WIDTH = "100%" BGCOLOR = "FF9900">
<TR>
<TD HEIGHT = "15" BGCOLOR = "#CC0000" COLSPAN = "3">
<FONT SIZE = "2" FACE = "HELVETICA, ARIAL, SANS SERIF" COLOR = "#FFFFFF">
<CENTER>
Perl & CGI tutorials
</CENTER>
</FONT>
</TD>
</TR>
<TR>
<TD VALIGN = "TOP">
<IMG SRC = "pointerbk.gif" tppabs="http://www.extropia.com/graphics/template/pointerbk.gif" BORDER = "0"
WIDTH = "8" HEIGHT = "8" ALT = "::">
</TD>
<TD>
</TD>
<TD>
<FONT SIZE = "2" FACE = "HELVETICA, ARIAL, SANS SERIF">
<A HREF = "javascript:if(confirm('http://www.extropia.com/tutorials/perl_cgi/ \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/tutorials/perl_cgi/'" tppabs="http://www.extropia.com/tutorials/perl_cgi/">Intro to Perl/CGI and HTML Forms</A>
</FONT>
</TD>
</TR>
<TR>
<TD VALIGN = "TOP">
<IMG SRC = "pointerbk.gif" tppabs="http://www.extropia.com/graphics/template/pointerbk.gif" BORDER = "0"
WIDTH = "8" HEIGHT = "8" ALT = "::">
</TD>
<TD>
</TD>
<TD>
<FONT SIZE = "2" FACE = "HELVETICA, ARIAL, SANS SERIF">
<A HREF = "javascript:if(confirm('http://www.extropia.com/tutorials/winperl/ \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/tutorials/winperl/'" tppabs="http://www.extropia.com/tutorials/winperl/">Intro to Windows Perl</A>
</FONT>
</TD>
</TR>
<TR>
<TD VALIGN = "TOP">
<IMG SRC = "pointerbk.gif" tppabs="http://www.extropia.com/graphics/template/pointerbk.gif" BORDER = "0"
WIDTH = "8" HEIGHT = "8" ALT = "::">
</TD>
<TD>
</TD>
<TD>
<FONT SIZE = "2" FACE = "HELVETICA, ARIAL, SANS SERIF">
<A HREF = "javascript:if(confirm('http://www.extropia.com/tutorials/perl5/ \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/tutorials/perl5/'" tppabs="http://www.extropia.com/tutorials/perl5/">Intro to Perl 5</A>
</FONT>
</TD>
</TR>
<TR>
<TD VALIGN = "TOP">
<IMG SRC = "pointerbk.gif" tppabs="http://www.extropia.com/graphics/template/pointerbk.gif" BORDER = "0"
WIDTH = "8" HEIGHT = "8" ALT = "::">
</TD>
<TD>
</TD>
<TD>
<FONT SIZE = "2" FACE = "HELVETICA, ARIAL, SANS SERIF">
<A HREF = "javascript:if(confirm('http://www.extropia.com/tutorials/perl_faq.html \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/tutorials/perl_faq.html'" tppabs="http://www.extropia.com/tutorials/perl_faq.html">Intro to Perl</A>
</FONT>
</TD>
</TR>
<TR>
<TD VALIGN = "TOP">
<IMG SRC = "pointerbk.gif" tppabs="http://www.extropia.com/graphics/template/pointerbk.gif" BORDER = "0"
WIDTH = "8" HEIGHT = "8" ALT = "::">
</TD>
<TD>
</TD>
<TD>
<FONT SIZE = "2" FACE = "HELVETICA, ARIAL, SANS SERIF">
<A HREF = "javascript:if(confirm('http://www.extropia.com/tutorials/taintmode.html \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/tutorials/taintmode.html'" tppabs="http://www.extropia.com/tutorials/taintmode.html">Intro to Perl Taint mode</A>
</FONT>
</TD>
</TR>
<TR>
<TD VALIGN = "TOP">
<IMG SRC = "pointerbk.gif" tppabs="http://www.extropia.com/graphics/template/pointerbk.gif" BORDER = "0"
WIDTH = "8" HEIGHT = "8" ALT = "::">
</TD>
<TD>
</TD>
<TD>
<FONT SIZE = "2" FACE = "HELVETICA, ARIAL, SANS SERIF">
<A HREF = "javascript:if(confirm('http://www.extropia.com/tutorials/misc/sherlock.html \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/tutorials/misc/sherlock.html'" tppabs="http://www.extropia.com/tutorials/misc/sherlock.html">Sherlock
Holmes and the Case of the Broken CGI Script</A>
</FONT>
</TD>
</TR>
<TR>
<TD VALIGN = "TOP">
<IMG SRC = "pointerbk.gif" tppabs="http://www.extropia.com/graphics/template/pointerbk.gif" BORDER = "0"
WIDTH = "8" HEIGHT = "8" ALT = "::">
</TD>
<TD>
</TD>
<TD>
<FONT SIZE = "2" FACE = "HELVETICA, ARIAL, SANS SERIF">
<A HREF = "javascript:if(confirm('http://www.extropia.com/tutorials/misc/perl_com.html \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.extropia.com/tutorials/misc/perl_com.html'" tppabs="http://www.extropia.com/tutorials/misc/perl_com.html">Writing COM Components in Perl</A>
</FONT>
</TD>
</TR>
</TABLE>
</TD>
</TR>
</TABLE>
<!-- END PERL RESOURCES TABLE -->
<P>
<!-- BEGIN JAVA RESOURCES TABLE -->
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -