📄 0099.htm
字号:
<html>
<head>
<title>新时代软件教程:操作系统 主页制作 服务器 设计软件 网络技术 编程语言 文字编辑</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style>
<!--
body, table {font-size: 9pt; font-family: 宋体}
a {text-decoration:none}
a:hover {color: red;text-decoration:underline}
.1 {background-color: rgb(245,245,245)}
-->
</style>
</head>
<p align="center"><script src="../../1.js"></script></a>
<p align="center"><big><strong>如何在Web页面中集成文件上传功能</strong></big></p>
<span class="text"> 当前,个人主页制作非常流行。当用户开发好自己的页面时,需要将文件传输到服务器上,解决这个问题的方法之一是运行FTP服务器并将每个用户的FTP默认目录设为用户的Web主目录,这样用户就能运行FTP客户程序并上传文件到指定的
Web目录。由于Windows NT 和 Windows98均不提供直接的基于窗口形式的FTP客户程序,用户必须懂得如何使用基于命令行的FTP客户,或掌握一种新的基于窗口形式的FTP客户程序。因此,这种解决方案仅对熟悉FTP且富有经验的用户来说是可行的。
如果我们能把文件上传功能与Web集成,使用户仅用Web浏览器就能完成上传任务,这对于他们来说将是非常方便的。下面就结合笔者的实践经验对这一方案作一简要介绍。<br>
本方案的软件配置如下:客户机操作系统为 Windows98 ;
服务器操作系统为Windows NT Server;Web服务器为IIS4.0。为使IIS能够接收上传的文件,
还必须安装Posting Acceptor组件,该组件位于NT 4.0 Option Pack 的 Site Server
Express中。Posting Acceptor组件的ISAPI扩展函数CPSHOST.DLL直接处理文件上传,目的URL被映射、解析为服务器上的物理磁盘位置。<br>
具体应用见如下网页代码: <br>
<br>
</span><table align="center" border="1" borderColor="#6699ff" width="75%">
<TBODY>
<tr>
<td><span class="text"><% Response.Buffer = TRUE %><br>
<% if (Len(Request.ServerVariables("LOGON_USER")) = 0 ) then %><br>
<% Response.Status = "401 Unauthorized" %><br>
<HTML><BODY><B>错误: 拒绝访问.</B><P></BODY></HTML><br>
<% else %><br>
<html><br>
<head><br>
<title>上传文件</title><br>
</head><br>
<body></span><p><span class="text"><h1 align="center">上传文件</h1></span></p>
<p><span class="text"><form method="post"
enctype="multipart/form-data"<br>
action="http://<%= Request.ServerVariables("SERVER_NAME") %><br>
/myweb/cpshost.dll?PUBLISH"><br>
<input name="TargetURL" type="hidden" value="http://<%= <br>
Request.ServerVariables("SERVER_NAME") %>/myweb/<%=<br>
Request.ServerVariables("LOGON_USER") %>"<br>
> <br>
请选择要上传的文件: <input name="my_file"
type="file"><br><br>
请选择要上传的文件: <input name="my_file"
type="file"><br><br>
请选择要上传的文件: <input name="my_file"
type="file"><br><br>
<br><br>
<input type="submit" name="cmdup" value="上 传"><br>
</form><br>
</body><br>
</html><br>
<% end if %></span></td>
</tr>
</TBODY>
</table>
<p><span class="text"><br>
上述代码以ASP文件的形式存放在Web网站宿主目录下myweb目录中,
用户只需用浏览器请求该文件即可。<br>
需要注意的几点是:<br>
⒈Request.ServerVariables("LOGON_USER")返回登录到Windows NT域的用户名,在本例中,如果用户名为空,则显示拒绝访问页面;不为空,才显示正常上传页面。<br>
⒉在安装Posting Acceptor组件后,CPSHOST.DLL文件位于Web服务器宿主目录下scripts目录中,可以把该文件拷贝到自己的目录中使用。<br>
⒊在表单中,enctype="multipart/form-data"
这一项不能少,否则不能正常上传。<br>
⒋表单控件TargetURL的名称(name属性)不能变。type="hidden"使该控件在页面中不显示。value属性确定上传文件在服务器中存放的路径,
可以根据实际情况调整。在本例中,文件上传路径是myweb目录(也就是本ASP文件和CPSHOST.DLL文件存放目录)下与登录用户名同名的子目录,并且该目录权限设为可写。<br>
⒌my_file控件类型为"file",在浏览器中显示的是一个文本框后带一个"浏览"按钮。当用户单击"浏览"按钮时,将弹出一个标准的选择文件对话框,供用户选择要上传的文件。可以根据实际需要增减my_file控件的个数。</span>
</table>
<p align="center"><script src="../../2.js"></script></a>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -