所以,过去三个小时我一直试图解决这个问题,我觉得我无法接近它......任何帮助将不胜感激。
我已经能够设置 jQuery文件上传器以将上传的图像保存在动态路径/网址中。一切似乎都有效,文件上传到正确的位置并显示在前端。但是,一旦重新加载页面,就没有它们的迹象。显然,它的路径/目录url错误。我无法弄清楚是什么!
这是 http://127.0.0.1/local/platform/backend/page-edit.php
上的HTML文件<form id="fileupload" method="POST" enctype="multipart/form-data">
...
<input type="hidden" name="path" value="products"><!-- Setting the directory to save the img -->
...
</form>
JFU的PHP文件UploadHandler.php和index.php位于 http://127.0.0.1/local/platform/uploads/ 下 的index.php:
$options = array('upload_dir'=>$_POST['path'].'/'.date("Y").'/'.date("n").'/', 'upload_url'=>'../uploads/'.$_POST['path'].'/'.date("Y").'/'.date("n").'/');
error_reporting(E_ALL | E_STRICT);
require('UploadHandler.php');
$upload_handler = new UploadHandler($options);
http://127.0.0.1/local/platform/backend/plugins/jQuery-File-Upload-9.5.7/js/ 下的main.js
$(function () {
'use strict';
$('#fileupload').fileupload({
// Uncomment the following to send cross-domain cookies:
//xhrFields: {withCredentials: true},
url: '../uploads/'
});
...
});
正如我所说,文件上传并显示正确。但是当我刷新页面时,它们不再出现在表格中......
答案 0 :(得分:1)
找到了解决方案!
基本上,我在页脚中将我想要的值分配为JS变量。然后,我在main.js上使用具有我需要的数据的变量,如下所示:
$('#fileupload').fileupload({
url: '.../uploads/index.php?page_type=' + THE_VARIABLE
});
现在,数据将传递到上传目录下的index.php文件中。所以,我得到了查询字符串并将其发送到UploadHandler.php:
parse_str($_SERVER['QUERY_STRING'], $query_string);
$options('upload_dir'=>$query_string['page_type'], 'upload_url'=>'../uploads/'.$query_string['page_type']);
...
$upload_handler = new UploadHandler($potions);
轰!像魅力一样工作!