バージョン選択

フォーラム

メニュー

オンライン状況

55 人のユーザが現在オンラインです。 (45 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 55
もっと...

サイト内検索

質問 > その他 > ファイルアップロードの進捗状況が取得できません(session.upload_progress)

その他

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
nicky
投稿日時: 2021/5/11 12:08
対応状況: −−−
新米
登録日: 2021/3/26
居住地:
投稿: 5
ファイルアップロードの進捗状況が取得できません(session.upload_progress)
[EC-CUBE] 4.0を新規インストール
[レンタルサーバ] SAKURA VPSの最小構成
[OS] CentOS 8
[PHP] 7.3.27
[データベース] Ver 14.14 Distrib 5.7.33
[WEBサーバ] Apache/2.4.6
[ブラウザ] Google Chrome 89.0.4389.90(Official Build) (64 ビット)
[導入プラグインの有無] なし
[カスタマイズの有無] あり(Controller, Entityの追加程度です)
[現象]
ファイルアップロードの機能にて、大きいサイズのファイルを登録するケースがある為、
アップロード時に進捗状況を表示したいと思っているのですが、進捗状況を取得する事が出来ません。

php.iniを編集し、session.upload_progress.* を全て有効化しました。
httpd は restart 済みです。

 session.upload_progress.enabled = On
 session.upload_progress.cleanup = On
 session.upload_progress.prefix = "upload_progress_"
 session.upload_progress.name = "PHP_SESSION_UPLOAD_PROGRESS"
 session.upload_progress.freq = "1%"
 session.upload_progress.min_freq = "1"
 session.lazy_write = On


twigファイルのform内に、進捗状況用のhidden項目を追加しました。
※name属性が変わってしまう為、FormTypeで定義せず直書きしています。

 <form name='uploadForm' method='POST' action='{{ url('file_upload') }}' enctype='multipart/form-data'>
  {{ form_widget(form._token) }}
  <input type="hidden" name="PHP_SESSION_UPLOAD_PROGRESS" value="123" />
  <div>
   {{ form_widget(form.fileData) }} <!-- input type=file -->
  </div>
  <div>
   <input type="submit" value="submit">
  </div>
 </form>

検証用なので最小限のみ記述しています。
formのsubmit後、JavaScriptで進捗状況を取得するコントローラを非同期で実行しています。


 $("form").submit(function() {
  var f = function() {
  $.getJSON("./upload/progress", function(data) {
   console.log(data);
   if (!data["done"]) {
    setTimeout(f, 200);
   }
  };
  setTimeout(f, 1000);
  console.log("submit");
 });



進捗状況を取得するControllerは、取り敢えず確認だけしたかったので
セッションの中身を全て返すようにしています。

 public function progress(Request $request)
 {
  return $this->json($_SESSION, 200);
 }


以上の状態でsubmit後、セッションの中身を確認したのですが、
キー値"upload_progress_123"が存在しませんでした。
何らかの設定等が不足していると思うのですが、ご存知の方がいらっしゃいましたら教えて頂けると幸いです。


以上、宜しくお願い致します。
フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
 » ファイルアップロードの進捗状況が取得できません(session.upload_progress) nicky 2021/5/11 12:08

 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,282名です
総投稿数は109,688件です

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1567
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.