美文网首页
实例:使用PHP将图片上传至服务器

实例:使用PHP将图片上传至服务器

作者: z1挂东南 | 来源:发表于2018-06-11 18:19 被阅读42次

2018.06.11,注意时间
.
.
.
本次介绍的实例是上传图片到服务器上,需要用到两个文件:第一个是提交表单文件,选择想要提交的文件,点击按钮提交图片;第二个是接收文件,接收到提交的图片后将图片保存在服务器上指定的位置。

目录结构:

upfiles_img文件夹
├─upfiles1.php     提交图片文件
├─upfiles2.php     接收图片文件


upfiles1.php文件(客户端文件):

上传文件的前提条件(客户端):
1.必须有文件上传框(可以出现多个,有默认值的)
2.必须以POST方式提交
3.必须指定FORM数据提交的编码类型为多格式上传,enctype="multipart/form-data"

<?php
header('Content-Type:text/html; charset=utf-8');
?>

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"/>
    <title>文件上传表单</title>
</head>
<body>
    <form action="upfiles2.php" method="post" enctype="multipart/form-data">
        <p>用户名:<input type="text" name="username"/></p>
        <p>文件上传:<input type="file" name="upfile"/></p>
        <p><input type="submit" value="立即提交"/></p>
    </form>
</body>
</html>

upfiles2.php文件(服务器端文件):

上传文件的前提条件(服务器端):
1.接收文件上传的数据必须使用 $_FILES
    接收到的是文件的相关信息(文件名、类型、大小、临时文件名)
2.接收到文件以后必须迅速将文件从临时目录中保存到指定位置,否则代码执行结束,文件就自动删除。
    使用函数:move_upload_file(临时文件路径,保存到的目标路径);
3.如果文件类型不是我们想要的类型,怎么办?
    拒绝上传

<?php
header('Content-Type:text/html; charset=utf-8');
date_default_timezone_set('PRC'); //为date('YmdHis')函数设置默认时区

//接收数据
$username = $_POST['username'];
$upfile = $_FILES['upfile'];

//生成文件名
$file_name = date('YmdHis').rand(100,999); //生成文件名,格式:年月日时分秒随机数
$ext = strrchr($upfile['name'], '.'); //通过文件名获取扩展名
$file_name = $file_name.$ext; //生成完整文件名,保存到数据库中

//检查文件类型,决定是否允许上传
if($ext!='.jpg' && $ext!='.png' && $ext!='gif'){
    echo '文件类型不允许上传!';
    exit;
}else{
    move_uploaded_file($upfile['tmp_name'], './files/'.$file_name);  //将上传的文件保存到服务器上指定的位置
    echo '文件上传成功!<a href="./upfiles1_img.php">回到首页</a>';
    echo '<br/>';
}
//提示:文件上传以后,文件是以独立文件形式保存的(保存在服务器的硬盘上),数据库中只保存文件名

以上代码都是运行成功后才贴的,如果有错误可能是复制粘贴出现失误,欢迎指正。——佛系程序员

相关文章

  • 实例:使用PHP将图片上传至服务器

    2018.06.11,注意时间...本次介绍的实例是上传图片到服务器上,需要用到两个文件:第一个是提交表单文件,选...

  • Android上传图片到服务器

    本实例实现了android上传手机图片至服务器,服务器进行保存 服务器servlet代码 publicvoiddo...

  • 安装SSH2拓展 PHP同步文件到远程服务器

    情景:客户端上传图片到服务器A,服务器A同步上传至另外一个静态资源服务器B 环境:php7 linux(ubunt...

  • umeditor图片上传至七牛

    确定图片上传实例化类的路径,查看umeditor/php/index.php 修改uploderControlle...

  • input上传图片并预览

    以上是将图片转为base64编码形式进行预览,并未将图片上传至服务器;若需要将图片传至后台,也可以将file文件转...

  • FastDFS

    需求:将本地图片上传至图片服务器,再控制台打印 url (1)创建 Maven 工程 fastDFSdemo 由于...

  • Servlet——upload

    一、文件上传的概述   用户将本地文件通过网络上传至服务器的过程。可以用于图片发送、上传简历等。 1、文件上传技术...

  • Vue+ElementUI+NodeJs图片上传

    一、将图片上传到服务器 1、添加图片上传框 在Vue组件的表单中添加图片上传框 其中: action:图片上传到服...

  • Springboot 03 ---- 利用MultipartFi

    文件上传可以有两种形式: 将图片资源上传到oos内容存储服务器,通过url访问图片资源 上传到项目服务器 这里采用...

  • Web

    web图片 图片处理服务器用来处理网站上传的图片满足大小、旋转等要求 图床:将本地图片上传到网络图片服务器,生成网...

网友评论

      本文标题:实例:使用PHP将图片上传至服务器

      本文链接:https://www.haomeiwen.com/subject/oebheftx.html