文件上传代码

UpLoad.aspx

<%@ Page language="c#" Codebehind="UpLoad.aspx.cs" AutoEventWireup="false" Inherits="WebPortal.Upload" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
  <HEAD>
    <title>多文件上传</title>
    <script language="JavaScript">
    function addFile()
    {
     var str = '<INPUT type="file" size="50" NAME="File">'
     document.getElementById('MyFile').insertAdjacentHTML("beforeEnd",str)
    }
    </script>
  </HEAD>
  <body>
    <form id="form1" method="post" runat="server" enctype="multipart/form-data">
      <div align="center">
        <h3>多文件上传</h3>
        <P id="MyFile"><INPUT type="file" size="50" NAME="File"></P>
        <P>
          <input type="button" value="增加(Add)" οnclick="addFile()">
          <input οnclick="this.form.reset()" type="button" value="重置(ReSet)">
          <asp:Button Runat="server" Text="开始上传" ID="UploadButton"></asp:Button>
        </P>
        <P>
        <asp:Label id="strStatus" runat="server" Font-Names="宋体" Font-Bold="True" Font-Size="9pt"
          Width="500px" BorderStyle="None" BorderColor="White"></asp:Label>
        </P>
      </div>
    </form>
  </body>
</HTML>
UpLoad.aspx.cs

using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace WebPortal
{
  /// <summary>
  /// UpLoad 的摘要说明。
  /// 实现多文件上传
  /// </summary>
  public class Upload : System.Web.UI.Page
  {
    protected System.Web.UI.WebControls.Button UploadButton;
    protected System.Web.UI.WebControls.Label strStatus;

    private void Page_Load(object sender, System.EventArgs e)
    {
      /// 在此处放置用户代码以初始化页面
      if (this.IsPostBack) this.SaveImages();
    }

    private Boolean SaveImages()
    {
      ///'遍历File表单元素
      HttpFileCollection files  = HttpContext.Current.Request.Files;

      /// '状态信息
      System.Text.StringBuilder strMsg = new System.Text.StringBuilder();
      strMsg.Append("上传的文件分别是:<hr color=red>");
      try
      {
        for(int iFile = 0; iFile < files.Count; iFile++)
        {
          ///'检查文件扩展名字
          HttpPostedFile postedFile = files[iFile];
          string fileName, fileExtension;
          fileName = System.IO.Path.GetFileName(postedFile.FileName);
          if (fileName != "")
          {
            fileExtension = System.IO.Path.GetExtension(fileName);
            strMsg.Append("上传的文件类型:" + postedFile.ContentType.ToString() + "<br>");
            strMsg.Append("客户端文件地址:" + postedFile.FileName + "<br>");
            strMsg.Append("上传文件的文件名:" + fileName + "<br>");
            strMsg.Append("上传文件的扩展名:" + fileExtension + "<br><hr>");
            ///'可根据扩展名字的不同保存到不同的文件夹
            ///注意:可能要修改你的文件夹的匿名写入权限。
            postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath("images/") + fileName);
          }
        }
        strStatus.Text = strMsg.ToString();
        return true;
      }
      catch(System.Exception Ex)
      {
        strStatus.Text = Ex.Message;
        return false;
      }
    }
  #region Web 窗体设计器生成的代码
  override protected void OnInit(EventArgs e)
  {
  //
  // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
  //
  InitializeComponent();
  base.OnInit(e);
  }

  /// <summary>
  /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  /// 此方法的内容。
  /// </summary>
  private void InitializeComponent()
  {   
    this.ID = "Upload";
    this.Load += new System.EventHandler(this.Page_Load);

  }
  #endregion
  }
}

 

2.using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace WebPortal
{
 /// <summary>
 /// UpLoad 的摘要说明。
 /// 实现多文件上传
 /// </summary>
 public class Upload : System.Web.UI.Page
 {
  protected System.Web.UI.WebControls.Button UploadButton;
  protected System.Web.UI.WebControls.Label strStatus;

  private void Page_Load(object sender, System.EventArgs e)
  {
   /// 在此处放置用户代码以初始化页面
   if (this.IsPostBack) this.SaveImages();
  }

  private Boolean SaveImages()
  {
   ///'遍历File表单元素
   HttpFileCollection files  = HttpContext.Current.Request.Files;

   /// '状态信息
   System.Text.StringBuilder strMsg = new System.Text.StringBuilder();
   strMsg.Append("上传的文件分别是:<hr color=red>");
   try
   {
    for(int iFile = 0; iFile < files.Count; iFile++)
    {
     ///'检查文件扩展名字
     HttpPostedFile postedFile = files[iFile];
     string fileName, fileExtension;
     fileName = System.IO.Path.GetFileName(postedFile.FileName);
     if (fileName != "")
     {
      fileExtension = System.IO.Path.GetExtension(fileName);
      strMsg.Append("上传的文件类型:" + postedFile.ContentType.ToString() + "<br>");
      strMsg.Append("客户端文件地址:" + postedFile.FileName + "<br>");
      strMsg.Append("上传文件的文件名:" + fileName + "<br>");
      strMsg.Append("上传文件的扩展名:" + fileExtension + "<br><hr>");
      ///'可根据扩展名字的不同保存到不同的文件夹
      ///注意:可能要修改你的文件夹的匿名写入权限。
      postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath("images/") + fileName);
     }
    }
    strStatus.Text = strMsg.ToString();
    return true;
   }
   catch(System.Exception Ex)
   {
    strStatus.Text = Ex.Message;
    return false;
   }
  }
  #region Web 窗体设计器生成的代码
  override protected void OnInit(EventArgs e)
  {
   //
   // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
   //
   InitializeComponent();
   base.OnInit(e);
  }

  /// <summary>
  /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  /// 此方法的内容。
  /// </summary>
  private void InitializeComponent()
  {   
   this.ID = "Upload";
   this.Load += new System.EventHandler(this.Page_Load);

  }
  #endregion
 }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 非常乐意回答这个问题:PHP文件上传代码可以使用函数move_uploaded_file()来实现,其原型为:bool move_uploaded_file ( string $filename , string $destination )。它可以将文件从临时目录移动到指定的目标目录中。 ### 回答2: PHP文件上传是指在网页中实现文件上传功能。通常,文件上传是通过HTML表单中的input标签的type属性设置为"file"来实现的。 实现文件上传的PHP代码如下: ```php <?php if ($_FILES["file"]["error"] > 0) { echo "文件上传错误:" . $_FILES["file"]["error"]; } else { echo "上传的文件名:" . $_FILES["file"]["name"] . "<br>"; echo "文件类型:" . $_FILES["file"]["type"] . "<br>"; echo "文件大小:" . ($_FILES["file"]["size"] / 1024) . " KB<br>"; echo "文件临时存储的位置:" . $_FILES["file"]["tmp_name"] . "<br>"; // 将文件从临时位置移动到目标位置 $target_dir = "uploads/"; // 目录路径 $target_file = $target_dir . basename($_FILES["file"]["name"]); // 目录路径+文件名 if (move_uploaded_file($_FILES["file"]["tmp_name"], $target_file)) { echo "文件上传成功"; } else { echo "文件上传失败"; } } ?> ``` 以上代码中,首先判断文件是否存在错误。如果错误代码大于0,则表示文件上传错误,将错误信息输出。否则,获取上传的文件信息,包括文件名、类型、大小以及临时存储位置,并输出这些信息。 然后,将文件从临时位置移动到指定位置。首先,设置目标文件夹的路径,将上传文件的临时位置与目标路径和文件名拼接起来,作为move_uploaded_file()函数的参数,即可将文件从临时位置移动到目标位置。如果移动成功,则输出"文件上传成功",否则输出"文件上传失败"。 ### 回答3: PHP文件上传是指利用PHP编程语言实现将文件从客户端上传到服务器的功能。实现文件上传代码如下: 1. 在前端页面中,使用HTML的<form>标签创建一个表单,设置enctype属性为"multipart/form-data",以支持文件上传。 2. 在后端PHP脚本中,首先判断是否有文件被上传。可以使用isset()函数来判断$_FILES数组中是否存在文件。例如: ```php if(isset($_FILES['file'])){ // 文件被上传 // 处理文件上传逻辑 } else { // 没有文件被上传 // 提示用户选择文件 } ``` 3. 处理文件上传的逻辑。可以使用move_uploaded_file()函数将上传的文件移动到指定的目录中。该函数的第一个参数是文件在$_FILES数组中的临时存储路径,第二个参数是文件上传后的保存路径。 ```php $targetDir = "uploads/"; // 上传文件保存的目录 $fileName = $_FILES['file']['name']; // 上传文件的原文件名 $targetPath = $targetDir . $fileName; // 上传文件的保存路径 if(move_uploaded_file($_FILES['file']['tmp_name'], $targetPath)){ // 文件上传成功 // 可以在此处对文件进行进一步处理或存储文件信息到数据库 echo "文件上传成功!"; } else { // 文件上传失败 echo "文件上传失败!"; } ``` 需要注意的是,要确保指定的目录具有写权限,以便能够保存上传的文件。 以上就是实现PHP文件上传的基本代码。如果需要对上传文件进行验证、限制文件类型、大小等,可以在文件上传前进行相应的判断和处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值