加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP实现上传文件的代码怎样编辑?

发布时间:2023-05-23 14:19:21 所属栏目:PHP教程 来源:
导读:这篇文章主要介绍了“PHP实现上传文件的代码怎样写?”相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇PHP实现上传文件的代码怎样写?文章都会有所收获,下面我们一起来看看
这篇文章主要介绍了“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 "上传失败";
 
}

?>
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!