PHP实现上传文件的代码怎样写?
Admin 2022-09-28 群英技术资讯 989 次浏览
这篇文章主要介绍了“PHP实现上传文件的代码怎样写?”相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇PHP实现上传文件的代码怎样写?文章都会有所收获,下面我们一起来看看吧。推荐操作系统:windows7系统、PHP5.6、DELL G3电脑
1、上传说明
将客户端的文件上传到服务器,将服务器端的临时文件移动到指定目录。
客户端配置:
(1)表单页面。
(2)表单的发送方式是post。
添加enctype="multipart/form-data";
2、实例
<html> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8"/> <title>上传你的File吧</title> </head> <form enctype="multipart/form-data" method="post" action="uploadprocess.php"> <table> <tr><td colspan="2"><font style="font-size:40px;font-family: 华文彩云;">文件上传</font></td></tr> <tr><td>请填写用户名:</td><td><input type="text" name="username"/></td></tr> <tr><td>请简单介绍该文件</td><td><textarea name="fileintro" rows="10" cols="80"></textarea></td></tr> <tr><td>请选择你要上传文件:</td><td><input type="file" name="myfile"/></td></tr> <tr><td><input type="submit" value="上传文件"/></td><td></td></tr> </table> </form> </html>
<?php
//1.接收提交文件的用户
$username=$_POST['username'];
$fileintro=$_POST['fileintro'];
//我们这里需要使用到 $_FILES
/*echo "<pre>";
print_r($_FILES);
echo "</pre>";*/
//其实我们在上传文件时,点击上传后,数据由http协议先发送到apache服务器那边,这里apache服务器已经将上传的文件存放到了服务器下的C:\windows\Temp目录下了。这时我们只需转存到我们需要存放的目录即可。
//php中自身对上传的文件大小存在限制默认为2M
//获取文件的大小
$file_size=$_FILES['myfile']['size'];
if($file_size>2*1024*1024) {
echo "文件过大,不能上传大于2M的文件";
exit();
}
$file_type=$_FILES['myfile']['type'];
echo $file_type;
if($file_type!="image/jpeg" && $file_type!='image/pjpeg') {
echo "文件类型只能为jpg格式";
exit();
}
//判断是否上传成功(是否使用post方式上传)
if(is_uploaded_file($_FILES['myfile']['tmp_name'])) {
//把文件转存到你希望的目录(不要使用copy函数)
$uploaded_file=$_FILES['myfile']['tmp_name'];
//我们给每个用户动态的创建一个文件夹
$user_path=$_SERVER['DOCUMENT_ROOT']."/studyphp/file/up/".$username;
//判断该用户文件夹是否已经有这个文件夹
if(!file_exists($user_path)) {
mkdir($user_path);
}
//$move_to_file=$user_path."/".$_FILES['myfile']['name'];
$file_true_name=$_FILES['myfile']['name'];
$move_to_file=$user_path."/".time().rand(1,1000).substr($file_true_name,strrpos($file_true_name,"."));
//echo "$uploaded_file $move_to_file";
if(move_uploaded_file($uploaded_file,iconv("utf-8","gb2312",$move_to_file))) {
echo $_FILES['myfile']['name']."上传成功";
} else {
echo "上传失败";
}
} else {
echo "上传失败";
}
?>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
Workerman是一款开源高性能异步PHP socket即时通讯框架。本文就来为大家介绍一些Workerman的特性,希望都大家有一定的帮助。
在本篇文章里小编给大家整理的是关于php服务器用什么系统的相关知识点内容,有兴趣的朋友们跟着学习参考下。
在本篇文章里小编给大家整理了一篇关于php两种基本的输出方及实例详解内容,有需要的朋友们可以跟着学习参考下。
php怎样现实上传和下载文件?很多网站都会提供文件的上传与下载功能,那么这一操作是如何实现的?下面是PHP实现对文件上传与下载操作的代码,有需要的朋友可做参考。
Laravel Gates(拦截器)允许你授权用户访问应用程序的某些区域。你可以轻松地在应用程序中定义拦截器,然后使用它们来允许或拒绝访问。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008