快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

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

 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  


返回类别: 教程
上一教程: .Net的精髓-XML和SOAP(三)
下一教程: 从 Visual Basic 6.0 到 Visual Basic.NET 的转变(5)

您可以阅读与"使aspx页面能接受HTML,asp的页面传送的文件"相关的教程:
· 将.aspx文件和图片编译进dll
· asp+的页面指示标识
· 查看服务器磁盘、文件的aspx
· Asp.net动态生成html页面
· 如何用asp+获取post的页面的数据
    微笑服务 优质保证 索取样品