上传文件函数的思路

<form action="" method="post" enctype="multipart/form-data">
请选择要上传的文件:<input type="file" name="myFile" value="" />   <input type="submit" value="开始上传" />
</form>
<?php
header("content-type:text/html;charset=utf-8");
echo "<pre>";
print_r($_FILES);
echo "</pre><hr/>";
$name=$_FILES[‘myFile‘][‘name‘];
$type=$_FILES[‘myFile‘][‘type‘];
$tmp_name=$_FILES[‘myFile‘][‘tmp_name‘];
$error=$_FILES[‘myFile‘][‘error‘];
$size=$_FILES[‘myFile‘][‘size‘];
if($error==UPLOAD_ERR_OK){
	if(is_uploaded_file($tmp_name)){
		@$ext=strtolower(end(explode(".", $name)));
		$extArray=array("jpeg","png","gif","jpg","txt");
		if(in_array($ext, $extArray)&&substr($type, 0,5)==‘image‘){
			//in_array函数是区分大小写的
				$uniqueName=md5(uniqid(microtime(true),true));
				$dir="images";
				$destination=$dir."/".$uniqueName.".".$ext;
				if(move_uploaded_file($tmp_name, $destination)){
					$mesErr="上传成功";
				}else{
					$mesErr="上传失败";
				}
		}else{
			$mesErr="不支持文件类型,请重新选择文件上传";
		}
	}else{
		$mesErr="非法上传方式";
	}
	alertErr($mesErr);
}else{
	//echo $error;
	switch($error){
		case 1:
			$mesErr="超过了配置文件设定的大小!";
			break;
		case 2:
			$mesErr="超过了POST缓存的最大值!";
			break;
		case 3:
			$mesErr="只有部分文件被上传!";
			break;
		case 4:
			$mesErr="没有文件被上传!";
			break;
		case 5:
			$mesErr="上传文件大小为0!";
			break;
		case 6:
		case 7:
		case 8:
			$mesErr="未知错误!!!";
			break;
		default:
			$mesErr="上传失败!";
			break;
	}
	alertErr($mesErr);
}
//Java警告
function alertErr($mesErr){
	echo "<script type=‘text/javascript‘>alert(‘{$mesErr}‘)</script>";
}

上传文件函数的思路

时间: 2024-11-09 00:55:03

上传文件函数的思路的相关文章

PHP最原始的上传文件函数

<?php $upload_file=$_FILES['upload_file']['tmp_name']; $upload_file_name=$_FILES['upload_file']['name']; // 上传的文件名 //获取文件后缀名 $temp_arr = explode(".", $upload_file_name); $file_ext = array_pop($temp_arr); $file_ext = trim($file_ext); $file_ext

PHP中封装上传文件函数

<?php /* *文件上传 * * */ //var_dump($_FILES); /* 多文件上传处理 $data = $_FILES['icon']; $name = $data['name']; if (is_array($name)) { for ($i=0; $i<count($name); $i++) { echo $data['tmp_name'][$i].'<br />'; } } else { echo '单个文件上传'; } */ $mimes = ['ima

PHP上传文件代码练习2 (重复文章)

表单: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题</title> </head> <body> <form action="upload.php" method="post" enctype=

spingMVC异步上传文件

框架是个强大的东西,一般你能想到的,框架都会帮你做了,然后只需要会用就行了,spingmvc中有处理异步请求的机制,而且跟一般处理请求的方法差别不大,只是多了一个注解:spingmvc也可以将string.list.map转化成json数据:然后前台发起一个ajax请求,后台处理完成返回json数据,这就是异步上传文件的基本思路. 1.springMVC处理异步请求配置 首先是需要的jar包资源 上传文件的jar: commons-fileupload-1.2.2.jar commons-io-

upload上传文件

上传Excel文件代码demo: 下载上传js文件:bower install ng-file-uploa:引入js文件: angular.module('dc.workflow', [ 'ngFileUpload']); js代码:var data=this.data={file:null};//定义data.file为空: this.selectImage = function (file) { this.errorFileType = false; if (file[0].type !=

HDFS设计思路,HDFS使用,查看集群状态,HDFS,HDFS上传文件,HDFS下载文件,yarn web管理界面信息查看,运行一个mapreduce程序,mapreduce的demo

26 集群使用初步 HDFS的设计思路 l 设计思想 分而治之:将大文件.大批量文件,分布式存放在大量服务器上,以便于采取分而治之的方式对海量数据进行运算分析: l 在大数据系统中作用: 为各类分布式运算框架(如:mapreduce,spark,tez,--)提供数据存储服务 l 重点概念:文件切块,副本存放,元数据 26.1 HDFS使用 1.查看集群状态 命令:   hdfs  dfsadmin –report 可以看出,集群共有3个datanode可用 也可打开web控制台查看HDFS集群

小程序云开发--云函数上传文件或图片 base64

云函数开发遇到的问题 在微信云开发环境当中,普通的用户并没有往云存储内写入文件的权限 所以普通用户想要使用wx.cloud.uploadFile显然是不现实的 但是我们同时也知道,云函数是后台服务端,具有管理员权限,只要能调用云函数上传文件就可以解决这个问题了 参照官方文档中云函数的写法 const cloud = require('wx-server-sdk') const fs = require('fs') const path = require('path') exports.main

angular延时函数和数据加载完才显示主要的页面、上传文件到后端、富文本框编辑框(ckeditor)

延时函数 setTimeout(()=>{ console.log("延时打印") },10000); // 延时10秒打印 //简单等数据加载完才显示主要的页面 1.先下载ngx-loading模块 npm install --save ngx-loading 2.在app.module.ts中引入NgxLoadingModule模块 import {NgxLoadingModule} from 'ngx-loading'; imports: [ BrowserModule,

上传文件 上传图片 源码跟思路

上传图片   代码(运行效果可见上传HTML文件) 上传文件 (也就几行,注释掉都是为了好理解,不用写)