上传文件
来源:互联网 发布:找车位app软件 编辑:程序博客网 时间:2024/05/09 07:46
<!DOCTYPE html>
<html>
<head>
<metacharset="UTF-8">
<title>上传文件</title>
</head>
<body>
<!--enctype规定在提交表单时要使用哪种内容类型,在表单提交需要二进制数据时,设置成"multipart/form-data"-->
<formaction="upload.php" method="get" enctype="multipart/form-data">
<inputtype="file" name="headImg" id="headImg"value="上传头像"/>
<inputtype="submit" value="提交上传" id="btn"/>
</form>
</body>
<script type="text/javascript">
varbtn = document.getElementById("btn");
var headImg = document.getElementById("headImg");
btn.onclick =function(){
//可以验证文件的类型和大小
console.log(headImg.files[0]);
}
</script>
</html>
<?php
//$_FILES 全局数组, 可以获取上传文件的信息
print_r($_FILES);
define("fileName","upload");
/*
* 获取文件名
* $name = $_FILES[headImg][name];
*/
//获取文件名
$name = $_FILES["headImg"]["name"];
// echo $name;
// echo "<hr>";
//获取文件类型
$type = $_FILES["headImg"]["type"];
//获取文件大小
$size = $_FILES["headImg"]["size"];
//获取在服务器上的文件临时存放路径
$temp = $_FILES["headImg"]["tmp_name"];
//与服务器有关的信息
echo"<hr>";
print_r($_SERVER);
//获取服务器名字,服务器地址
$rootPath = $_SERVER["SERVER_NAME"];
//获取绝对路径
$basePath = $_SERVER["DOCUMENT_ROOT"];
//定义要存储目的地文件地址
function imagePath(){
global $basePath;//本地的路径
global $name;//文件的名字
// $path = $basePath."/PHP/PHP03/upload/".$name;
$path = $basePath."/PHP/PHP03/".fileName."/".$name;
return $path;
}
//设定服务器的文件网址
function fileURL(){
global $rootPath;
global $name;
$path = "http://".$rootPath."/PHP/PHP03/".fileName."/".$name;
return $path;
}
//设定文件夹的路径
function filePath(){
global $basePath;
$path = $basePath."/PHP/PHP03/".fileName."/";
return $path;
}
//限制上传文件的大小和格式
// $type = "image/gif";
// $size = 1000;
if(!(($type== "image/gif"|| $type =="image/jpeg" || $type== "image/png")&& $size <1024000)){
echo"你上传的图片格式或者大小不符合要求,请重新上传";
return;//提前终止代码执行
}
//判断是否接收成功
if($_FILES["headImg"]["error"] >0){
echo"Error:".$_FILES["headImg"]["error"];
}else{//文件上传成功,服务器已经接收到
$desPath = imagePath();//要存储的目的文件地址
$rootPath = fileURL();//获取服务器文件的网址
$filePath = filePath();//要存上传的文件的文件夹的路径
echo"目的文件:".$desPath."<hr>";
echo"服务器根路径:".$rootPath."<hr>";
echo"文件夹路径:".$filePath."<hr>";
if(!is_dir($filePath)){//判断文件夹是否存在,不存在的话创建
echo"文件夹不存在";
mkdir($filePath);
chmod($filePath,0755);//修改权限
/*
* 1-执行
* 2-写
* 4-读
* 777 - 分别指: 用户 组用户 everyone
* 1+2+4=7 读与写的权限
* 1+2=3 只读
* 1+4=5 只写
*/
}else{
echo"<hr>";
echo"文件夹已经存在";
}
//$temp 文件临时路径
$res = move_uploaded_file($temp,$desPath);
var_dump($res);
if($res){
echo"<img src={$rootPath} />";
}
}
?>
- 文件上传---文件上传
- 上传文件
- 文件上传
- 上传文件
- 文件上传
- 文件上传
- 上传文件
- 上传文件
- 文件上传
- 文件上传
- 文件上传
- 文件上传
- 文件上传
- 文件上传
- 文件上传
- 上传文件
- 文件上传
- 文件上传
- 非常详细的Docker 学习记录
- HTML5学习整理
- Android 关于Glide的拓展(高斯模糊、加载监听、圆角图片)
- 大数运算支持负数但是不支持大数除以大数
- Octopress 搭建静态博客站点 --- 添加访客统计
- 上传文件
- Volley完全解析——使用、源码
- 【Java笔试题】按字节截取字符串
- android应用第一次启动加载大数据导致启动速度慢解决办法
- Android webview使用详解
- 【POJ2356】Find a multiple(鸽巢原理)
- 常用数据库性能优化最佳实践建议
- Unity编辑器扩展工具Shader Forge和Behavior Designer(行为树)和 Cinema Director
- 文章标题