utils という非 CI ディレクトリを作成し、その中に server/php コードを配置して CI コントローラーから呼び出すと、すべて正常に動作します。アップロード ディレクトリを動的に変更しますが、それも同様に機能します。完了時に返される json は次のとおりです。
{
"files": [{
"name": "pob1.pptx",
"size": 2234155,
"type": "application\/vnd.openxmlformats-officedocument.presentationml.presentation",
"url": "https:\/\/www.myurl.com\/media\/ppt\/1\/pob1.pptx",
"delete_url": "https:\/\/www.myurl.com\/media\/ppt\/1\/?file=pob1.pptx",
"delete_type": "DELETE"
}]
}
UploadHandler.php をライブラリ フォルダーにコピーし、コントローラーを使用してファイルのアップロードを開始すると、それも機能し、期待どおりにファイルがカスタム ディレクトリにアップロードされます。しかし、奇妙なのは、システムが最初の json ファイルに追加された 2 番目の json ファイルを返し、「json ファイルの終わりの後に無効な文字」エラーをスローしていることです。Jsonファイルは以下です。
{
"files": [{
"name": "pob1.pptx",
"size": 2234155,
"type": "application\/vnd.openxmlformats-officedocument.presentationml.presentation",
"url": "https:\/\/www.myurl.com\/media\/ppt\/1\/pob1.pptx",
"delete_url": "https:\/\/www.myurl.com\/media\/ppt\/1\/?file=pob1.pptx",
"delete_type": "DELETE"
}]
} {
"files": [{
"name": "pob1 (1).pptx",
"size": 0,
"type": "application\/vnd.openxmlformats-officedocument.presentationml.presentation",
"error": "abort",
"delete_url": "https:\/\/www.myurl.com\/media\/ppt\/1\/?file=pob1%20%281%29.pptx",
"delete_type": "DELETE"
}]
}
これら 2 つは、最初の部分では同一であることに注意してください。「files」属性で始まる json の 2 番目のブロックが CI の例に追加されます。また、このインスタンスには、2 回アップロードしようとしているかのように、アップロード ファイル名が更新されていることに注意してください。何が原因でしょうか? CI実装で何か?
何か案は?これは、すばらしい Codeigniter ソリューションに非常に近いものです。
これはすべて、jQuery 1.8.3 と jquery-ui 1.9.2 を使用した新しい Blueimp 6.1 ですが、UI の考慮事項以外は問題ではないと思います。