您可能在不知不觉中上传了多个文件。如果这不是您的意图,您可以检查您的 HTML 并检查标签的名称属性。它不能是一个数组(像这样)。
<input type="file" name="my_files[]" />
如果您只在数据库中看到 Array(),则表示您确实在上传多个文件。您可以使用循环来处理它们。
如果您确定要上传 1 张图片,您可以按照@Palanikumar 的建议进行操作。使用 print_r() 并显示 $_FILES 并将其粘贴到此处。如果你不想使用它,你可以使用
json_encode($the-data-you-are-going-to-insert-to-the-database);
如果你不知道把 print_r() 函数放在哪里,你可以把它放在这个文件的第 56 行之后。
https://gist.github.com/desbest/a958926883b9e7cc68f7#file-brandcontroller-php-L53
if(isset($_FILES['filename']['name']) && $_FILES['filename']['name'] != '') {
print_r($_FILES);
die;
如果在 ajax 函数中调用 saveAction(),则需要记录 ajax 响应。假设您使用的是 jquery ..
$ajaxResponse = $.POST({...});
console.log($ajaxResponse.responseText);
然后,您可以在浏览器的控制台中查看它。如果没有出现,您可以使用非异步请求
$ajaxResponse = $.POST({
// your options,
// your another option,
async: FALSE
});