gpt4 book ai didi

php - AjaxFileUpload 插件无法检索 $_POST 数据

转载 作者:行者123 更新时间:2023-11-30 23:44:09 24 4
gpt4 key购买 nike

这与 I faced a few days ago 几乎相同的问题。我当时修复了它,但现在它不再起作用了。嗯,其中一些是有效的。

我正在使用AjaxFileUpload Plugin在我的 WP 插件中上传文件。该插件调用 uploader.php 来处理上传表单。

我可以使用 $_FILES['uploadFile'] 获取文件名(和其他数据),但无法检索 $_POST['current_path'] 数据。

不过我有一个理论。当我加载接口(interface)上传数据时,隐藏输入字段“current_path”为空(应该是空的)。当我浏览文件夹时,隐藏的输入字段会使用 jQuery 进行更新。

当我点击上传按钮时,Ajax 文件上传插件会获取上传表单中的数据,并通过 $_POST 将数据传递到 uploader.php >$_FILES

但是为什么我能够从 $_FILES 获取数据,而不是从 $_POST 获取数据?

这是我的代码:

Javascript

  //File upload functions
// Remove feedback message on upload click
jQuery('.uploadImage').live('click',function() {
ajaxFileUpload();
});

(...)

//Lets upload the file by using Ajax uploader plugin
function ajaxFileUpload() {
alert(jQuery('input[type=hidden][name=current_path]').val()) //Shows me the correct current path
jQuery.ajaxFileUpload ( {
url:'../wp-content/plugins/wp-filebrowser/uploader.php',
secureuri:false,
fileElementId:'uploadFile',
dataType: 'json',
success: function (data) {
if(data.error != '') {
alert(data.error);
} else {
alert(data.respons);
}
},
error: function (e) {
jQuery('#uploadOutput').addClass('error').html('Error: ' + e).show();
},
complete: function() {
// Update file list
}
}
)
return false;
}

HTML

<form id="uploadForm" enctype="multipart/form-data" action="" method="POST">
<input type="hidden" id="current_path" name="current_path" value="<?php echo $fb->relative_url; ?>" />
<input id="uploadFile" name="uploadFile" type="file" />
<input type="button" class="button uploadImage" value="<?php _e('Upload File') ?>" /> <br />
</form>

PHP

$this->current_path   = $_POST['current_path'];
$this->data['error'] = $_FILES['uploadFile']['name']; //Just for testing
$this->data['respons'] = "Filename: ".$_POST['current_path'];

echo json_encode($this->data);

最佳答案

But why am I able to get data from $_FILES and not from $_POST?

因为您没有提交表单,仅提交文件输入元素。

这似乎是插件的行为 by design :

In this hacked version, it submits the specified file type of input element only rather than an entire form

jQuery form plugin两者都可以,也许这有帮助。

关于php - AjaxFileUpload 插件无法检索 $_POST 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3699837/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com