javascript - Jquery:$_Files 中的 Formdata 文件字段为空
问题描述
我发布formdata
如下
let redirecturl="<?=base_url()?>admin/forms";
let formData = new FormData()
let posturl = " <?=base_url() . 'admin/forms/post_values';?>";
var filepath = document.getElementById("institute_systemlogo").value;
/*formData.append('file',d);*/
formData.append('form',JSON.stringify(FormArray));
formData.append('file', filepath);
$.ajax(posturl, {
type: 'POST',
data: formData,
enctype: 'multipart/form-data',
async: false,
cache: false,
contentType: false,
processData: false
}, function (response) {
console.log(response);
});
并接收过帐值$_POST
和$_FILES
如果我在我的formdata中执行console.log,如下所示
console.log(formData.get("file")+"file here ");
console.log(formData.get("form")+"form here ");
我在控制台中获取数据如下
C:\fakepath\logo.png file here
{"field_type":"date","field_label":"dfdf","field_options":"","is_required":false}]form here
现在的问题是,当我收到$_Files
它的空$_POST
值时,请帮助我在这里做错了什么
解决方案
假设#institute_systemlogo
元素是input type="file"
,那么您需要上传文件,而不是通常保存在value
. 尝试这个:
var filepath = document.getElementById("institute_systemlogo").files[0];
这也假设已选择一个文件,并且您只需要一个文件。在这些情况下,您将需要一些验证和/或循环。
推荐阅读
- javascript - 如何监听 window.forward() 事件?(HTML5 历史 API)
- zsh - ZSH 清除终端并呈现命令返回数据
- php - mkdir 上的 file_put_contents 无法打开流:权限被拒绝
- python - 图片未显示在我的 QLabel 加载屏幕上
- swift - 如何为每个小部件获取不同的数据
- python - 你能制作 mpld-matplotlib 交互式图形网络应用程序吗?
- python - 通过传递函数在 Python(非实时)仿真环境中仿真子系统
- javascript - 如何使用 Google Docs API 将文本添加到 Word 文档?
- r - 提取R中2个点之间的字符
- c# - 如何使用动态枢轴c#winform将总计列和行插入datagridview