网页中上传文件操作

实现上图效果:

主页代码:

<form action="chuli.php" method="post" enctype="multipart/form-data">
<input type="file" name="file"/>
<input  type="submit" value="上传"/>
</form>

处理页面:

<?php
//获取到上传的文件
var_dump($_FILES["file"]);//$_FILES本身就为数组
//控制文件类型和大小
if(($_FILES["file"]["type"]=="image/png"||$_FILES["file"]["type"]=="image/jpeg")&&$_FILES["file"]["size"]<=102400)
{
    //上传操作
    //设置存储路径
    $filename="./img/".date("YmdHis").$_FILES["file"]["name"];
    //将存储路径的编码格式变为国标
    $filename=iconv("UTF-8","gb2312",$filename);//这一步要先于移动文件执行

    //如果文件名重复,出现覆盖
    //判断文件是否存在
    if(file_exists($filename))//判断存储路径中的文件名是否存在
    {
        die("文件名已存在");
        }
    //移动文件
    $yuan=$_FILES["file"]["tmp_name"];
    move_uploaded_file($yuan,$filename);

    }
else
{
    echo "上传失败";
    }
//减少文件重名的概率,把未知文件添加进存储路径中的方法:修改文件名、新建文件夹(一般用于文件名无法修改时);
时间: 2024-10-22 03:43:29

网页中上传文件操作的相关文章

微信网页中上传文件时“只能选择SD卡中的文件”问题

需求描述:在微信网页中上传文件到我们自己的服务器,使用 input  type=file标准控件: <input type="file" name="upfile" id="upfile" > 问题来了:苹果可以顺利上传图片文件的,安卓下每次选择完图片文件之后会弹出提示"只能选择SD卡中的文件"不能上传图片.手机已经设置默认存储为SD卡. 百度搜了一个下午没有结果,微信公众平台更没有答案shiiiit. 最后在cs

Mac/Linux/Centos终端中上传文件到Linux云服务器

Mac/Linux/Centos终端中上传文件到Linux云服务器 1.mac上传文件到Linux服务器 scp 文件名 用户名@服务器ip:目标路径如:scp /Users/test/testFile [email protected]:/test/ 2.mac上传文件夹到Linux服务器,与上传文件相比多加了-r scp -r 文件夹目录 用户名@服务器ip:目标路径 如:scp -r /Users/test/testFolder [email protected]:/test/ 3.Lin

谈谈php中上传文件的处理

这是一个表单的时代... 我们在浏览器中编辑自己的信息,会遇到上传头像:在文库中,我们会上传文档......到处存在“上传”这个词. php是最好的语言(其他语言的程序猿们不要打我...).php在处理交互方面有天然的优势,自然有强大的函数来处理上传文件. 和提交一般的数据一样,上传文件也需要表单.下面建立一个特殊的表单来上传文件. 1 <form enctype="multipart/form-data" action="upload_file.php" n

2. SpringMVC 上传文件操作

1.创建java web项目:SpringMVCUploadDownFile 2.在项目的WebRoot下的WEB-INF的lib包下添加如下jar文件 1 com.springsource.com.mchange.v2.c3p0-0.9.1.2.jar 2 com.springsource.net.sf.cglib-2.2.0.jar 3 com.springsource.org.aopalliance-1.0.0.jar 4 com.springsource.org.apache.commo

ASP.Net中上传文件的几种方法

在做Web项目时,上传文件是经常会碰到的需求.ASP.Net的WebForm开发模式中,封装了FileUpload控件,可以方便的进行文件上传操作.但有时,你可能不希望使用ASP.Net中的服务器控件,仅仅使用Input标签来实现文件上传.当然也是可以的.下面总结在项目中使用过的上传文件的方式. 一.使用Asp.Net中的FileUpload服务器端控件实现上传 使用asp.net中的服务器端控件FileUpload上传文件非常方便.FileUpload对上传操作进行了封装,你只需要调用Save

Servlet中服务器端接收上传文件操作

最近老大分了一个任务,客户端使用C#实现了文件上传,要求我实现服务器端的文件接收保存到本地并且接收成功返回给客户端一个标识.在网上看了一下,大多数都是客户端的文件上传操作,很少有写服务端的处理,借此次机会,分享一下自己在服务端实现的处理逻辑.废话不多说,直接上代码 public class ReciveServlet extends HttpServlet { private static final long serialVersionUID = 1Lpublic ReciveServlet(

网页上传文件夹的解决方案

最近遇见一个需要上传百兆大文件的需求,调研了七牛和腾讯云的切片分段上传功能,因此在此整理前端大文件上传相关功能的实现. 在某些业务中,大文件上传是一个比较重要的交互场景,如上传入库比较大的Excel表格数据.上传影音文件等.如果文件体积比较大,或者网络条件不好时,上传的时间会比较长(要传输更多的报文,丢包重传的概率也更大),用户不能刷新页面,只能耐心等待请求完成. 下面从文件上传方式入手,整理大文件上传的思路,并给出了相关实例代码,由于PHP内置了比较方便的文件拆分和拼接方法,因此服务端代码使用

JavaScript中上传文件为图片如何读取(UI组件之图片剪裁器)

//获取上传的文件/图片 function getFile(){ var files,len; var reader = new FileReader(); var img_type; addEvent(selectFile,'change',function(){ files = this.files;//selectFile为上传文件表单,this.files获取选择的文件 len = files.length; if(len > 0){ img_type = files[0].type;

thinkphp5中上传文件自定义命名规则

在thinkphp5中:有上传文件一章: https://www.kancloud.cn/manual/thinkphp5/155159 如果对于文件上传这一章,不了解,就先看下面的,再来看这一段. 下面我们自定义两个规则. 1.datea规则,年月/时分秒.(3位随机数) /201706/164030789 2.ymmd5规则,年/月/md5 修改框架文件:thinkphp/library/think/File.php. 增加两个case: case 'datea': case 'ymmd5'