上传图片的脚本不起作用

时间:2015-06-15 22:11:03

标签: php

我需要一个CMS来制作漫画阅读器,所以我买了PHP漫画:http://codecanyon.net/item/php-manga-manga-reader-website-solution/full_screen_preview/10102963

问题是漫画图像没有按顺序上传。例如,如果我选择并上传图像(或页面)1,2,3 ...他将图像上传到3,1,2左右。

可悲的是,他们不再提供支持,当我决定购买它时,我不知道,因为我无法在没有许可证的情况下访问他们的论坛。所以我需要自己解决这个问题。

这是输入表格:

<?php echo Form::input('uploaderInput', R('uploaderInput'), array("type"=>"file", "data-href"=>URL('admin/base64'), "data-dir"=>"upload/manga/".$thisManga['slug']."/", "id"=>"inputUploader", "class"=>"form-control ", "multiple")) ?>

这是模板

$template->customJs .= '$("#chapterNumber").on("keyup", function(){
                            $("#chapterInfoDiv").show();
                        });


                        function readImage(input) {
                            for(var i=0,file; file = input.files[i]; i++) {
                                var FR = new FileReader();
                                FR.onload = function(e) {
                                    var base64 = e.target.result,
                                        h = $("#inputUploader").data("href"),
                                        d = $("#inputUploader").data("dir")+$("#chapterNumber").val(),
                                        options = {
                                            type: "POST",
                                            url: h,
                                            data: { base64 : base64 , dir : d },
                                            dataType: "json",
                                            success: function(response) {
                                                if(response.s == "ko"){
                                                  alert(response.m);
                                                }else if(response.s == "ok"){
                                                  $("textarea#inputContent").val($("textarea#inputContent").val()+""+response.m+";");
                                                }
                                            }
                                        };
                                      $.ajax(options);
                                };       
                                FR.readAsDataURL( input.files[i] );
                            }
                        }

                        $("#inputUploader").change(function(){
                            readImage( this );
                        });

                        ';

这是功能

    function secure_img_upload($file, $path, $options = array()){
 // HANDLE OPTIONS
 $validExtensions = isset($options['validExtensions']) ? $options['validExtensions'] : array('jpg', 'jpeg', 'png');
 $surfix = isset($options['surfix']) ? $options['surfix'] : '';

 // HANDLES FILES
 $tempFile           =    $file['tmp_name'];
 $fileName         =    $file['name'];
 $extension    =   explode(".", $fileName);
 $extension    =    strtolower(end($extension));
 $imageName        =    sha1($fileName.uniqid());
 $destination  =   rtrim($path, '/').'/'.$imageName.$surfix.'.'.$extension;

 if(in_array($extension, $validExtensions)) {
     $validExtension        =    true;    
 } else {
     $validExtension        =    false;    
 }

 // Run getImageSize function to check that we're really getting an image
 if(getimagesize($tempFile) == false) {
     $validImage        =    false;    
 } else {
     $validImage        =    true;    
 }

 if($validExtension == true && $validImage == true) {
     if(move_uploaded_file($tempFile, $destination)) {
      return $destination;
     }else{
      return array('s'=>'ko', 'm'=>T("Invalid path."));
     }
    }else{
     return array('s'=>'ko', 'm'=>T("Invalid extension."));
    }

你能帮我解决一下这个问题吗?真的,我找不到任何错误......上传器是一个带有多个

的输入

1 个答案:

答案 0 :(得分:1)

有一个插件可以修复它 在codecanyon上查看 该插件将修复订单并显示上传进度(速度,字节数)。完整的细节可以在codecanyon上看到