·您的位置: 首页 » 资源教程 » 编程开发 » ASP.NET » 使aspx页面能接受HTML,asp的页面传送的文件

使aspx页面能接受HTML,asp的页面传送的文件

类别: ASP.NET教程  评论数:0 总得分:0
 aspx接受aspx页面的文件很简单,用HtmlInputFile,就可以了,但是如果接受Html页面post的文件
就不怎么好办了,我仿照asp的方法做法如下,自己测试通过,拿出来给大家共享,可以限制
文件内容,类型,大小,自定义存储位置,在congfig.xml内
html页的内容:(来自FCKeditor)
<html>
 <head>
  <title>FCKeditor - Uploaders Tests</title>
  <script language=\"javascript\">

function SendFile()
{
 var sUploaderUrl = cmbUploaderUrl.value ;
 
 if ( sUploaderUrl.length == 0 )
  sUploaderUrl = txtCustomUrl.value ;
 
 if ( sUploaderUrl.length == 0 )
 {
  alert( \'Please provide your custom URL or select a default one\' ) ;
  return ;
 }
 
 eURL.innerHTML = sUploaderUrl ;
 txtUrl.value = \'\' ;
 
 frmUpload.action = sUploaderUrl ;
 frmUpload.submit() ;
}

function OnUploadCompleted( errorNumber, fileUrl, fileName, customMsg )
{
 switch ( errorNumber )
 {
  case 0 : // No errors
   txtUrl.value = fileUrl ;
   alert( \'File uploaded with no errors\' ) ;
   break ;
  case 1 : // Custom error
   alert( customMsg ) ;
   break ;
  case 10 : // Custom warning
   txtUrl.value = fileUrl ;
   alert( customMsg ) ;
   break ;
  case 201 :
   txtUrl.value = fileUrl ;
   alert( \'A file with the same name is already available. The uploaded file has been renamed to \"\' + fileName + \'\"\' ) ;
   break ;
  case 202 :
   alert( \'Invalid file\' ) ;
   break ;
  case 203 :
   alert( \"Security error. You probably don\'t have enough permissions to upload. Please check your server.\" ) ;
   break ;
  default :
   alert( \'Error on file upload. Error number: \' + errorNumber ) ;
   break ;
 }
}

  </script>
 </head>
 <body>
  <table cellSpacing=\"0\" cellPadding=\"0\" width=\"100%\" border=\"0\" height=\"100%\">
   <tr>
    <td>
     <table cellSpacing=\"0\" cellPadding=\"0\" width=\"100%\" border=\"0\">
      <tr>
       <td nowrap style=\"height: 43px\">
        Select the \"File Uploader\" to use:<br>
        <select id=\"cmbUploaderUrl\" name=\"Select1\">
         <option selected value=\"asp/upload.asp\">ASP</option>
         <option value=\"php/upload.php\">PHP</option>
         <option value=\"Upload.aspx?type=image\">aspx</option>
        </select>
       </td>
       <td nowrap style=\"height: 43px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
       <td width=\"100%\" style=\"height: 43px\">
        Custom Uploader URL:<BR>
        <input id=\"txtCustomUrl\" style=\"WIDTH: 100%; BACKGROUND-COLOR: #dcdcdc\" disabled type=\"text\">
       </td>
      </tr>
     </table>
     <br>
     <table cellSpacing=\"0\" cellPadding=\"0\" width=\"100%\" border=\"0\">
      <tr>
       <td noWrap>
        <form id=\"frmUpload\" target=\"UploadWindow\" enctype=\"multipart/form-data\" action=\"\" method=\"post\">
         Upload a new file:<br>
         <input type=\"file\" name=\"NewFile\"><br>
         <input type=\"button\" value=\"Send it to the Server\" onclick=\"SendFile();\">
        </form>
       </td>
       <td style=\"WIDTH: 16px\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
       <td vAlign=\"top\" width=\"100%\">
        Uploaded File URL:<br>
        <INPUT id=\"txtUrl\" style=\"WIDTH: 100%\" readonly type=\"text\">
       </td>
      </tr>
     </table>
     <br>
     Post URL: <span id=\"eURL\">&nbsp;</span>
    </td>
   </tr>
   <tr>
    <td height=\"100%\">
     <iframe name=\"UploadWindow\" width=\"100%\" height=\"100%\"></iframe>
    </td>
   </tr>
  </table>
 </body>
</html>
upload.aspx的内容:
<%@ Page Language=\"C#\" AutoEventWireup=\"true\"  CodeFile=\"Upload.aspx.cs\" Inherits=\"Upload\"%>
下面是后台代码:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.IO;
using System.Text;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Xml;
using System.Collections.Specialized;
public partial class Upload : System.Web.UI.Page
{
 public void SendResults(int errorNumber, string fileUrl, string fileName, string customMsg)
 {
  StringBuilder text = new StringBuilder();
  text.Append(\"<script type=/\"text/javascript/\">\");
  text.Append(\"window.parent.OnUploadCompleted(\" + errorNumber + \",/\"\" + fileUrl.Replace(\"/\"\", \"///\"\") + \"/\",/\"\" + fileName.Replace(\"/\"\", \"///\"\") + \"/\",/\"\" + customMsg.Replace(\"/\"\", \"///\"\") + \"/\") ;/n\");
  text.Append(\" </script>\");
  Response.Write(text.ToString());
  Response.End();
 }
 public void GetConfig(string type, out string[] allowedExt, out string[] denyedExt,out string savePath,out long maxSize)
 {
   XmlDocument doc = new XmlDocument();
   doc.Load(Server.MapPath(@\"./Config.xml\"));
   XmlElement root=doc.DocumentElement;
   XmlNodeList imageNodelist=root.GetElementsByTagName(type);
   allowedExt = imageNodelist[0].FirstChild.InnerText.Trim().Split(\'|\');
   denyedExt = imageNodelist[0].LastChild.InnerText.Trim().Split(\'|\');
   savePath = root.GetElementsByTagName(\"userPath\").Item(0).InnerText.Trim();
   try
   {
    maxSize = Convert.ToInt64(root.GetElementsByTagName(\"maxSize\").Item(0).InnerText.Trim());
   }
   catch { maxSize = 10*1024; }
 }
 protected void Page_Load(object sender, EventArgs e)
 {

  string[] allowedExt = new string[] { }, denyedExt = new string[] { };
  string savePath = String.Empty;
  long maxSize = 10000;
  string type = Request.QueryString[\"Type\"];
  if(type!=null&&type!=string.Empty)
   type=type.ToLower();
  else
   type=\"file\";
  if (type == \"image\")
  {
   GetConfig(\"image\", out allowedExt, out denyedExt, out savePath,out maxSize);   
  }
  if (type == \"file\")
  {
   GetConfig(\"file\", out allowedExt, out denyedExt, out savePath, out maxSize);   
  }
  if (type == \"flash\")
  {
   GetConfig(\"flash\", out allowedExt, out denyedExt, out savePath, out maxSize);  
  }
  if (savePath == string.Empty||savePath==\"\")
   savePath = \"~/UserFiles/\";
  if(!savePath.EndsWith(\"/\"))savePath+=\"/\";

本新闻共2页,当前在第1页  1  2  

本新闻共2页,当前在第1页  1  2  

-= 资 源 教 程 =-
文 章 搜 索
关键词:
类型:
范围:
纯粹空间 softpure.com
Copyright © 2006-2008 暖阳制作 版权所有
QQ: 15242663 (拒绝闲聊)  Email: faisun@sina.com
 纯粹空间 - 韩国酷站|酷站欣赏|教程大全|资源下载|免费博客|美女壁纸|设计素材|技术论坛   Valid XHTML 1.0 Transitional
百度搜索 谷歌搜索 Alexa搜索 | 粤ICP备19116064号-1