一个免费的邮件列表源程序(二)
点击次数:21 次 发布日期:2008-11-26 17:50:03 作者:源代码网
|
<%@ Language=JavaScript %> <!--#include file = "include/SetGlobals.asp"--> <% // get the page to display from the URL var sPage = "" + Request.QueryString ( "page" ); // make sure it"s a page we allow them to view! switch ( sPage ) { case "Wider": case "COM": case "Handle404": case "Categories": case "CategoryPage": case "Columns": case "ResultsPage": case "Date": case "Contact": case "Subscribe": case "MailToList": break; default: Response.Redirect ( "NaughtyNaughty!" ); } // output relevant meta tags Init( "ASP source example" ); // output common top of page Header( "<a href="work.asp">Work</a> --> <a href="" + sPage + ".asp">"" + sPage + ".asp"</a> --> Source", 3 ); // output page content Content ( ); // output common bottom of page Footer ( ); %> <% /* standard page elements */ %> <!--#include file = "utils/Init.asp"--> <!--#include file = "utils/Header.asp"--> <!--#include file = "utils/Footer.asp"--> <!--#include file = "utils/ShowFile.asp"--> <% // ============================================ // the content of this page // ============================================ function Content ( ) { Out ( "<td width="20%"> </td>" ); Out ( "<td width="60%">" ); // create handle to FileSystemObject var oFSO = Server.CreateObject ( "Scripting.FileSystemObject" ); // each source file that we show source for could have a related // documentation file for us to display before and after the // source. for now, I use a generic header and footer file. the // "true" tells ShowFile to pass through any HTML to the browser. ShowFile ( oFSO, "Generic.pre", true, false ); switch ( sPage ) { case "Categories": case "CategoryPage": case "Columns": Out ( "<p><img src="http://www.zzchn.com/edu/20070912/images/new.gif"> <a href="Categories.zip">Download</a> all the source for the category demonstration!<p>" ); break; } ShowSource ( oFSO, sPage + ".asp", true ); // show any extra utility file(s) too switch ( sPage ) { case "Wider": ShowSource ( oFSO, "include/SetGlobals.asp", true ); ShowSource ( oFSO, "utils/Header.asp", true ); break; case "Categories": case "CategoryPage": case "Columns": case "Subscribe": case "MailToList": ShowSource ( oFSO, "utils/Database.asp", true ); break; case "Categories": case "CategoryPage": case "Columns": ShowSource ( oFSO, "utils/ShowCategory.asp", true ); break; } // show the generic footer ShowFile ( oFSO, "Generic.pst", true, false ); // we"ve finished with the object so free the resource oFSO = null; Out ( "<p><center><a href="FSO.asp"><img src="http://www.zzchn.com/edu/20070912/images/source.gif" border=0></a></center>" ); Out ( "</td>" ); Out ( "<td width="20%"> </td>" ); } %> utils/ShowFile.asp <% // have we advertized our mailing list yet? var bDoneLink = false; // ============================================ // display the contents of the given file // ============================================ function ShowFile ( oFSO, sFile, bPassHTML, bShowName ) { var ForReading = 1; // var ForWriting = 2; // var ForAppending = 8; // open asp file for reading var fFile = oFSO.OpenTextFile ( Server.MapPath( sFile ), ForReading ); // read entire file contents into variable var s = fFile.ReadAll ( ); if ( !bPassHTML ) { // replace & with & so HTML displayed, not interpreted s = s.replace ( /&/g, "&" ); // replace < with < so HTML displayed, not interpreted s = s.replace ( /</g, "<" ); // replace newline with HTML equivalent s = s.replace ( / /g, "<br>" ); // replace tabs with 3 spaces s = s.replace ( / /g, " " ); // show filename and change font color for source code s = "<font color="black">" + s + "</font>"; if ( bShowName ) s = "<h4>" + sFile + "</h4>" + s; } Out ( s ); fFile.Close ( ); } // ============================================ // show a source file outside the table // ============================================ function ShowSource ( oFSO, sFile, bShowName ) { // advertize our mailing list before the first source file if ( !bDoneLink ) { bDoneLink = true; Out ( "<p><b>Get informed when the source code below changes!</b> <a href="subscribe.asp">Subscribe to our mailing list.</a>" ); } Out ( "</td>" ); Out ( "<td width="20%"> </td></tr><tr><td colspan=3 width="100%" bgcolor="#ff9900">" ); // show news file ShowFile ( oFSO, sFile, false, bShowName ); Out ( "</td></tr><tr><td width="20%"> </td>" ); Out ( "<td width="60%">" ); } %> 源代码网供稿. |
