5

jQueryファイルアップロードプラグインをphpフレームワークで実装しましたが、指示に従って比較的簡単でした。

https://github.com/blueimp/jQuery-File-Upload

私の質問は、具体的には PHP クラスに関するものです。画像がアップロードされると、フレームワーク フォルダー (php スクリプトが実行される場所) にアップロードされます。私が知りたいのは、画像がアップロードされるパスを設定する方法があるかどうかです。

これが問題のクラスです。

https://github.com/blueimp/jQuery-File-Upload/blob/master/server/php/UploadHandler.php

これは、jQuery ファイル アップロード リポジトリに含まれています。

4

4 に答える 4

12

1. server / php / UploadHandler.php の 40 行目を変更し、必要なディレクトリを配置します。

 'upload_dir' => dirname($this->get_server_var('SCRIPT_FILENAME')).'/files/',

2..クラスの初期化時にアップロードディレクトリをパラメーターとして追加することにより

$options = array ('upload_dir' => dirname(__FILE__) . '/uploaddir/');
$upload_handler = new UploadHandler($options);
于 2013-08-28T01:46:07.487 に答える
2

これらのオプションを UploadHandler() 関数に追加します。パスの末尾に「/」を必ず追加してください。

$upload_handler = new UploadHandler(array(
            'upload_dir' => '/Your/absolute/upload/folder/path/',  
            'upload_url' => '/url/of/above/path/',
            'script_url' => '/url/of/uploadhandler/script',
            'accept_file_types' => '/\.(jpe?g|png)$/i'
     ));
于 2016-03-15T22:07:41.360 に答える
0

次のようにコールバック関数をオーバーライドできます

$('#fileupload').fileupload({
add: function (e, data) {
    var jqXHR = data.submit()
        .success(function (result, textStatus, jqXHR) {/* ... */})
        .error(function (jqXHR, textStatus, errorThrown) {/* ... */})
        .complete(function (result, textStatus, jqXHR) {/* ... */});
}
});

上記の例では、単にフォームの送信を行っています。

于 2013-08-28T01:41:59.317 に答える
0

UploadHandeler.php の 40 行目と 41 行目にあるパスを変更すると、指定されたパスが変更されることがわかりました。

于 2013-08-28T01:39:09.633 に答える