首页 > 解决方案 > PHP上传数组偏移问题

问题描述

我正在尝试使用与我在网站上其他地方使用的完全相同的代码,但它现在已经停止工作。我不知道是不是因为目录更深,但我无法弄清楚。

对于表单元素,我只是使用它;

<input type="file" id="logo" name="logo" required>

对于我正在使用的上传代码;

<?php
$target_dir = "/home/example.com/path/files/logos/";
$target_file = $target_dir . basename($_FILES["logo"]["name"]);
$uploadOk = 1;
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));

if  (move_uploaded_file($_FILES["logo"]["tmp_name"], $target_file)) {
        echo "";
    } else {
        echo "";
    }
?>

这种确切的方法可以正常工作,在其他地方完全没有错误。我已经删除了验证,因为它不是必需的,而且文件不太可能具有相同的名称。我只想能够上传到目录。我不反对添加诸如_timestamp消除验证需求之类的东西,因为无论如何所有文件都将被唯一地重命名。我将提交的信息存储在 CSV 中,并稍后通过电子邮件发送指向图像的链接,因此不需要这样做,因为这意味着需要获取新文件名。

我面临的错误Notice: Undefined index: logo对我来说毫无意义,因为它是在表单中定义的,所以这就是它从中获取的内容,而且Notice: Trying to access array offset on value of type null in我在搜索一个小时后仍然不明白,因为似乎没有人知道。

任何事情都会不胜感激。

标签: php

解决方案


推荐阅读