WEB开发网
开发学院WEB开发ASP 一个免费的邮件列表源程序(二) 阅读

一个免费的邮件列表源程序(二)

 2000-08-18 10:52:10 来源:WEB开发网   
核心提示:ShowSource.asp<%@ Language=javaScript %> <!--#include file = "include/SetGlobals.asp"--> <% // get the page to display from the URL var
ShowSource.asp
<%@ 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.cncms.com/"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.cncms.com/"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 ( /\n/g, '<br>' );

   // replace tabs with 3 spaces
   s = s.replace ( /\t/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%">' );
}
%>

Tags:一个 邮件列表

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接