Jadual Kandungan
不使用框架实现文件上传
方法介绍
使用uploadifive框架实现文件上传
Rumah pembangunan bahagian belakang tutorial php php文件上传及uploadifive的基本使用

php文件上传及uploadifive的基本使用

May 08, 2018 am 09:45 AM
php guna

这篇文章主要介绍了关于php文件上传及uploadifive的基本使用,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

本篇对 不使用框架实现php上传 和 使用uploadifive框架进行了小结

不使用框架实现文件上传

简单看了下菜鸟教程上的demo
文件结构如下图
这里写图片描述

form.html

<form action="upload_file.php" method="post" enctype="multipart/form-data">
    <label for="file">文件名:</label>
    <input type="file" name="file" id="file"><br>
    <input type="submit" name="submit" value="提交"></form>
Salin selepas log masuk

最基本的表单,不多说

upload_file.php

//允许上传的图片后缀
$allowedExts = array("gif","jpeg","jpg","png","doc");
$temp = explode(".",$_FILES["file"]["name"]);
echo $_FILES["file"]["size"];
$extension = end($temp);
if((($_FILES["file"]["type"] == "images/gif")
    ||($_FILES["file"]["type"] == "image/jpeg")
    ||($_FILES["file"]["type"] == "image/jpg")
    ||($_FILES["file"]["type"] == "image/pjpeg")
    ||($_FILES["file"]["type"] == "image/x-png")
    ||($_FILES["file"]["type"] == "image/png")
    ||($_FILES["file"]["type"] == "application/msword"))
    &&($_FILES["file"]["size"] < 204800)
    && in_array($extension,$allowedExts)){    if($_FILES["file"]["error"] > 0){        
    echo "错误:: ".$_FILES["file"]["error"]."<br>";
    }else{        
    echo "上传文件名: ".$_FILES["file"]["name"]."<br>";        
    echo "文件类型: ".$_FILES["file"]["type"]."<br>";        
    echo "文件大小: ".($_FILES["file"]["size"]/1024)."kB<br>";        
    echo "文件临时存储的位置: ".$_FILES["file"]["tmp_name"]."<br>";        //判断当前目录下的upload目录是否存在
        //如果没有upload目录, 你需要创建它,upload目录权限为 777
        if(file_exists("upload/".$_FILES["file"]["name"])){            
        echo $_FILES["file"]["name"]."文件已经存在。";
        }else{            
        //如果upload 目录不存在该文件则将文件上传到upload目录上s
            move_uploaded_file($_FILES["file"]["tmp_name"],"upload/".$_FILES["file"]["name"]);            
            echo "文件存储在: "."upload/".$_FILES["file"]["name"];
        }
    }
}else{    
echo "非法的文件格式";
}
Salin selepas log masuk

也很好理解,核心函数只有一个move_uploaded_file(),其它的代码都是些为筛选做准备的语句,也很容易理解。

方法介绍
bool move_uploaded_file ( string $filename , string $destination )
Salin selepas log masuk

作用:
  将上传文件移动到新的位置。本函数检查并确保由 filename 指定的文件是合法的上传文件(即通过 PHP 的 HTTP POST 上传机制所上传的)。如果文件合法,则将其移动为由 destination 指定的文件。

参数介绍:

$filename:上传文件的文件名
Salin selepas log masuk
$destination:移动文件到这个位置
Salin selepas log masuk



使用uploadifive框架实现文件上传

  1. 引入所需要的框架文件

<script src="../js/jquery-3.3.1.min.js" type="text/javascript"></script>
<script src="jquery.uploadifive.min.js" type="text/javascript"></script>
<link rel="stylesheet" type="text/css" href="uploadifive.css">
Salin selepas log masuk

jquery和uploadifive的相关文件,没有可去官网下载或者找demo中文件。

  1. 创建表单

    <form>
        <p id="queue"></p>
        <input id="file_upload" name="file_upload" type="file" multiple="true">
    </form>
Salin selepas log masuk
  1. 在js中使用框架

<script type="text/javascript">
        <?php $timestamp = time();?>
        $(function () {
            $('#file_upload').uploadifive({              
              'auto' : true,          
              //是否自动上传,默认true
                'checkScript' : '\.\/js\/uploadify\/check-exists.php', //检查文件路径
                'formData' : {                   
                 'timestamp' : '<?php echo $timestamp;?>',                   
                 'token' : '<?php echo md5('unique_salt'.$timestamp);?>',
                },               
                 'onInit' :  function(){
                    $('p.uploadifive-button').show();
                },               
                 'queueID' : 'queue',   //进度条的显示位置
                'uploadScript' : 'demo\/uploadifive.php',       //上传路径脚本
                'onUploadComplete' : function(file,data){  //文件上传成功后执
//                  console.log(file);
                },                
                'onError'      : function(errorType) {
                    console.log(errorType);                   
                     var msg = '文件上传有误';                    
                     switch(errorType) {                        
                     case 'FORBIDDEN_FILE_TYPE':
                            msg = '错误的上传文件类型';                            
                            break;

                    }
                    alert('错误提示: ' + msg);
                }
            });
        });    </script>
Salin selepas log masuk

本例子只使用了最基本一些属性,实现了基本的上传功能

相关推荐:

php文件上传基础入门

php文件上传类及PHP封装的多文件上传类分享


Atas ialah kandungan terperinci php文件上传及uploadifive的基本使用. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Dec 24, 2024 pm 04:42 PM

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian

Tarikh dan Masa CakePHP Tarikh dan Masa CakePHP Sep 10, 2024 pm 05:27 PM

Tarikh dan Masa CakePHP

Konfigurasi Projek CakePHP Konfigurasi Projek CakePHP Sep 10, 2024 pm 05:25 PM

Konfigurasi Projek CakePHP

Muat naik Fail CakePHP Muat naik Fail CakePHP Sep 10, 2024 pm 05:27 PM

Muat naik Fail CakePHP

Penghalaan CakePHP Penghalaan CakePHP Sep 10, 2024 pm 05:25 PM

Penghalaan CakePHP

Bincangkan CakePHP Bincangkan CakePHP Sep 10, 2024 pm 05:28 PM

Bincangkan CakePHP

Panduan Ringkas CakePHP Panduan Ringkas CakePHP Sep 10, 2024 pm 05:27 PM

Panduan Ringkas CakePHP

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Dec 20, 2024 am 11:31 AM

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP

See all articles