【问题标题】:how to images uploaded multiple users in javascript如何在javascript中上传多个用户的图像
【发布时间】:2016-09-13 13:06:37
【问题描述】:

这是我的屏幕截图,请参见用户 1 上传了一些文件/图像,例如(图像 1、图像 2 和图像 3)。另一个用户(用户 2)上传了一些文件/图像(图像 4、图像 5、图像 6)。两个用户都上传了文件/图像同时。我正在为用户文件上传目录使用单个目录。现在我面对的是哪个用户上传的文件/图像?这个 angular.js 文件

'use strict';
    $(function(){
        $(document).on('click','#drop_div',function(){
            $('#file_upload').click();
        });
    });
    angular.module('app', ['angularFileUpload']).controller('AppController', ['$scope', 'FileUploader', function($scope, FileUploader) {
       var uploader = $scope.uploader = new FileUploader({url: 'upload.php'});
       console.log('uploader---------'+uploader);
        uploader.filters.push({
            name: 'customFilter',
            fn: function(item /*{File|FileLikeObject}*/, options) {
                    var type = '|' + item.type.slice(item.type.lastIndexOf('/') + 1) + '|';
                    var file_exten_val = '|pdf|jpg|jpeg|png|bmp|gif|application|x-zip-compressed|'.indexOf(type);
                    var file_name = item.name;
                    var slice_exten = file_name.split('.');
                    console.log([type,file_exten_val]);
                    if((file_exten_val == -1) && (slice_exten[1] =='epub') || (type =='x-zip-compressed')){
                        return this.queue.length < 20;
                    }else if(file_exten_val >= 0){
                        return this.queue.length < 20;
                    }          
           }
        });
    }]);

上传.php

<?php 
    if ( !empty( $_FILES ) ) {
        
        $tempPath = $_FILES['file']['tmp_name'];
        $uploadPath = dirname( __FILE__ ) . DIRECTORY_SEPARATOR . 'uploads' . DIRECTORY_SEPARATOR . $_FILES[ 'file' ][ 'name' ];
        echo $uploadPath;
        move_uploaded_file( $tempPath, $uploadPath );

        $answer = array( 'answer' => 'File transfer completed' );
        $json = json_encode( $answer );

        echo $json;

    } else {

        echo 'No files';

    }
    ?>

【问题讨论】:

  • 您可以将用户的唯一 ID 添加到文件名中吗?还是将每个用户的图像存储在自己的子目录中?

标签: javascript php angularjs


【解决方案1】:

根据documentation,您可以将一些表单数据与您的文件一起发送(参数formData):

'use strict';
    $(function(){
        $(document).on('click','#drop_div',function(){
            $('#file_upload').click();
        });
    });
    angular.module('app', ['angularFileUpload']).controller('AppController', ['$scope', 'FileUploader', function($scope, FileUploader) {
       var uploader = $scope.uploader = new FileUploader({url: 'upload.php', formData: [{username: 'MyUsername'}]});
       //[...]
    }

【讨论】:

    猜你喜欢
    • 2017-09-10
    • 2018-11-09
    • 2014-10-04
    • 2015-04-21
    • 1970-01-01
    • 2018-08-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-13
    相关资源
    最近更新 更多