| TomSteeper的代码中有调用图象预览的语句(< img src="< %= FullPath % >" >)。将这条语句拷贝下来并修改它使它可以使用于txt文本文件扩展名。不是设置图象的来源给TomSteeper代码,我在表格中设置给动态包括代码:< %=OP_incfile% >.
我同时也修改了TomSteeper代码,所以它可以重定向到文件路径。如果文件类型不是一个可以接受的扩展名(txt,gif,jpg)就显示一个错误的消息。请记住,你页可以在PureASP上载行为设置可以接受的文件扩展名。你可能想允许用户上载一个ZIP文件,但是不想显示它。所以在你的应用程序中要解决两个问题:文件类型的在载和文件类型的预览。提供号的指导和错误信息对于避免困惑用户是至关重要的。以下是具体代码:
< %@LANGUAGE="VBSCRIPT"% >
< % Response.buffer = true % >
< !--This combines the Tom Steeper Preview Code with Owen Palmer's Dynamic Include -- >
< %
FullPath=Request("file1")
SplitPath=Split(FullPath,"\")
FileName=Ubound(SplitPath)
FileName=SplitPath(FileName)
ExtensionSplit=Split(FileName,".")
Extension=Ubound(ExtensionSplit)
Extension=ExtensionSplit(Extension)
% >
< %
'UltraDeviant - Dynamic Include written by Owen Palmer (http://ultradeviant.co.uk) - VBScript code written by Dave Long (teq@tweekers.com) - RC Changes remove OP_txtfile = Server.MapPath(Default.htm) and replace with OP_txtfile = FullPath
Dim OP_txtfile
Dim OP_fso
Dim OP_incfile
Dim OP_thefile
OP_txtfile = FullPath 'FilePath
Set OP_fso = CreateObject("Scripting.FileSystemObject")
if OP_fso.FileExists(OP_txtfile) then
Set OP_thefile = OP_fso.OpenTextFile(OP_txtfile,1)
OP_incfile = OP_thefile.ReadAll
OP_thefile.Close
Set OP_fso = Nothing
Set OP_thefile = Nothing
else
nofile.htm 'If file does not exist
end if
% >
some other code on the page and then...
< % IF Extension = "gif" OR Extension = "jpg" THEN
% >
< table width="100%" border="0" cellspacing="0" cellpadding="0" height="100%" >
< tr >
< td >
< div align="center" >< img src="< %= FullPath % >" >< /div >
< /td >
< /tr >
< /table >
< % END IF% >
< !--RC Changes remove < img src="< %= FullPath % >" > and replace with < %= OP_incfile % >-- >
< % IF Extension = "txt" OR Extension = "htm" OR Extension = "html" OR Extension = "shtm" OR Extension = "shtml" THEN
% >
< table width="100%" border="0" cellspacing="5" cellpadding="5" height="100%" >
< tr >
< td >
< %=OP_incfile% >
< /td >
< /tr >
< /table >
< % END IF% >
< !--RC Changes - redirect to Error Message if the wrong file type-- >
< % ELSE % >
< table width="100%" border="0" cellspacing="5" cellpadding="5" height="100%" >
< tr >
< td >
< div align="center" >< h4 >Sorry, only GIF, JPG, TXT, HTM, HTML, SHTM, or SHTML files can be displayed< /h4 >< /div >
< /td >
< /tr >
< /table >
< % END IF % >
现在你只需要再增加一段代码就可以大功告成了。如果你想运行预览,你将得到一个HTTP错误页眉(上面写着错误信息)。为了改正这个错误,你必须再网页的上方增加如下代码,这条语句是迫使在任何东西被回传之前先执行整个网页。
< % Response.buffer = true % >
本教程我在编写代码的时候综合了Server Behaviors(SB,服务器行为)、PureASP上载、TomSteemper(上载之前先预览文件)、动态包含文件、TomMuck(插入并获得ID)等等的特点。这些代码实现了以下一些功能:在上载之前预览一下图象的类型,在预览窗口中打开其它txt文本文件类型。
最后给出本文应用到的服务器行为(SB)的下载地址:
服务器行为 下载地址
PureASP上载 http://www.udzone.com/
上载之前先预览文件 http://members.prestige.net/ultradev/
动态包含文件 http://www.ultradeviant.co.uk/
TomMuck(插入并获得ID) http://www.ultrasuite.com/us/
|