当前位置:首页 > 编程技术 > 正文内容

【说站】php上传文件代码

yc8881年前 (2022-11-04)编程技术353

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 "上传失败";
}
 
?>

以上就是php上传文件代码的分享,在正式上传的时候,我们需要把文件移至服务器,然后对表单进行一系列的操作。大家学会后,可以在php中尝试此种方法。更多php学习指路:php教程

本站发布的内容若侵犯到您的权益,请邮件联系站长删除,我们将及时处理!


从您进入本站开始,已表示您已同意接受本站【免责声明】中的一切条款!


本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行研究。


本站资源仅供学习和交流使用,版权归原作者所有,请勿商业运营、违法使用和传播!请在下载后24小时之内自觉删除。


若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,使用者自行承担,概与本站无关。


本文链接:https://www.10zhan.com/biancheng/9651.html

标签: PHP
分享给朋友:

“【说站】php上传文件代码” 的相关文章

【说站】laravel实现自定义404页面并给页面传值

【说站】laravel实现自定义404页面并给页面传值

以 laravel5.8 为例,虽然有自带的404页面,但太简单,我们更希望能自定义404页面,将用户留在站点。实现的方式很简单,将自定义的视图文件命名为 404.blade.php,并放到 reso...

【说站】Thymeleaf报错Error resolving template “XXX”

【说站】Thymeleaf报错Error resolving template “XXX”

修改了一下开源项目的目录结构访问突然报错Error resolving template “XXX”可能原因有如下三种:第一种可能:原因:在使用springboot的过程中,如果使用thymeleaf...

【说站】电脑安装MySQL时出现starting the server失败原因及解决方案

【说站】电脑安装MySQL时出现starting the server失败原因及解决方案

今天在安装MySQL时出现starting the server失败,经过查询分析得出以下结论,记录一下操作步骤。原因分析:如果电脑是第一次安装MySQL,一般不会出现这样的报错。如下图所示。star...

【说站】Java从resources读取文件内容的方法有哪些

【说站】Java从resources读取文件内容的方法有哪些

本文主要介绍的是java读取resource目录下文件的方法,比如这是你的src目录的结构├── main│ ├── java│ │ └── ...

【说站】linux中redis如何以redis用户重启?

【说站】linux中redis如何以redis用户重启?

通过上图我们可以看到,目前状态是已经以 redis 用户启动着,我想修改下 redis 的密码,然后怎么以 redis 用户重启呢?redis 是 nologin 用户,不能通过 su redis 切...

【说站】使用systemctl配置dnspod-shell实现ddns

【说站】使用systemctl配置dnspod-shell实现ddns

这个是毛子路由器上用的脚本,由于碳云的nat服务器公网IP不断的变,因此只好通过ddns来稳定连接nat服务器了。顺便水一篇文章,大家新年快乐。使用前需要将域名添加到 DNSPod 中,并添加一条A记...