Как указать правильный URL-адрес в UploadHandler.php для загрузки файла jimpery blueimp на laravel

Так как я хочу использовать функцию изменения размера клиента, я пробую https://blueimp.github.io/jQuery-File-Upload/ BASIC PLUS UI Demo

Я не знаю, как поставить истинный маршрут URL для папки загрузки файлов. так как он всегда переносится на маршрут web.php и не может использовать место, которое я сделал в папке public / images. index.blade.php

<form id ="fileupload" action="https://jquery-file-upload.appspot.com/" method="POST" enctype="multipart/form-data">
        <form id ="fileupload" action="https://jquery-file-upload.appspot.com/" method="POST" enctype="multipart/form-data">
        <!-- Redirect browsers with JavaScript disabled to the origin page -->
        <noscript><input type ="hidden" name="redirect" value="https://blueimp.github.io/jQuery-File-Upload/"></noscript>
        <!-- The fileupload-buttonbar contains buttons to add/delete files and start/cancel the upload -->
        <div class="row fileupload-buttonbar">
            <div class="col-lg-7">
                <!-- The fileinput-button span is used to style the file input field as button -->
                <span class="btn btn-success fileinput-button">
                    <i class ="glyphicon glyphicon-plus"></i>
                    <span>Add files...</span>
                    <input type="file" name="files[]" multiple>
                </span>
                <button type="submit" class="btn btn-primary start">
                    <i class="glyphicon glyphicon-upload"></i>
                    <span>Start upload</span>
                </button>
                <button type="reset" class="btn btn-warning cancel">
                    <i class="glyphicon glyphicon-ban-circle"></i>
                    <span>Cancel upload</span>
                </button>
                <button type="button" class="btn btn-danger delete">
                    <i class="glyphicon glyphicon-trash"></i>
                    <span>Delete</span>
                </button>
                <input type="checkbox" class="toggle">
                <!-- The global file processing state -->
                <span class="fileupload-process"></span>
            </div>
            <!-- The global progress state -->
            <div class="col-lg-5 fileupload-progress fade">
                <!-- The global progress bar -->
                <div class="progress progress-striped active" role="progressbar" aria-valuemin="0" aria-valuemax="100">
                    <div class="progress-bar progress-bar-success" style="width:0%;"></div>
                </div>
                <!-- The extended global progress state -->
                <div class="progress-extended">&nbsp;</div>
            </div>
        </div>
        <!-- The table listing the files available for upload/download -->
        <table role="presentation" class="table table-striped"><tbody class="files"></tbody></table>
    </form>

main.js

$(function () {
    'use strict';

    // Initialize the jQuery File Upload widget:
    $('#fileupload').fileupload({
        // Uncomment the following to send cross-domain cookies:
        //xhrFields: {withCredentials: true},
        // url: 'server/php/',
        url: 'uploadprocess',
        dataType: 'json',

веб-маршрут

Route::post('uploadprocess', 'ComeController@uploadprocess');

Я уже положил UploadHandeler.php в приложение /

Comecontroller

  public function uploadprocess(Request $request)
    {
        error_reporting(E_ALL | E_STRICT);
        $upload_handler = new UploadHandler();
    }

UploadHandeler.php

<?php
    namespace App;
    class UploadHandler
    {

        protected $options;

        // PHP File Upload error message codes:
        // http://php.net/manual/en/features.file-upload.errors.php
        protected $error_messages = array(
            1 => 'The uploaded file exceeds the upload_max_filesize directive in php.ini',
            2 => 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form',
            3 => 'The uploaded file was only partially uploaded',
            4 => 'No file was uploaded',
            //....
            'abort' => 'File upload aborted',
            'image_resize' => 'Failed to resize image'
        );

        protected $image_objects = array();

        public function __construct($options = null, $initialize = true, $error_messages = null) {
            $this->response = array();
            $this->options = array(
    //---------------------------the question is here-------------
                'script_url' => $this->get_full_url().'/'.$this->basename($this->get_server_var('SCRIPT_NAME')),

                'upload_dir' => dirname($this->get_server_var('SCRIPT_FILENAME')).'/files/',
                'upload_url' => $this->get_full_url().'/files/',
    //--------------------------the  question is here----------

                'input_stream' => 'php://input',

                .......

I has already make a folder on public/images

How can I let the jpg to put on the right folder place

I have try below but the picture is not upload successful.

           'script_url' => $this->get_full_url().'/'.$this->basename($this->get_server_var('SCRIPT_NAME')),

            'upload_dir' => dirname($this->get_server_var('SCRIPT_FILENAME')).'/images/',
            'upload_url' => $this->get_full_url().'/images/',

PS: это хорошо работает на предварительном изображении, но когда я нажимаю кнопку загрузки

если я использую метод сообщения маршрута

  Route::post('uploadprocess', 'ComeController@uploadprocess');

Я получил ошибку на консоли при перезагрузке index.blade.php

   jquery-3.3.1.min.js:2 GET http://localhost:8000/uploadprocess 405 (Method Not Allowed)

если я использую метод получения Roue

Route::post('uploadprocess', 'ComeController@uploadprocess');

это не ошибка, когда я перезагружаю index.blade.php, но когда я помещаю кнопку загрузки после показа изображений предварительного просмотра (функция добавления работает хорошо)

jquery-3.3.1.min.js:2 POST http://localhost:8000/uploadprocess 419 (unknown status)

Как я могу поместить файл изображения в правильный URL-адрес или папку?

0 ответов

Другие вопросы по тегам