PHP 更改 PHP 设置后文件上传不工作

PHP File Upload Not Working after change to PHP settings

我有一个简单的 PHP 文件上传脚本来上传文件。它工作正常,但在更改 PHP 设置后,脚本没有上传文件,尽管我没有收到任何错误并且它说它已成功上传。该脚本似乎正在执行它的工作,但我在我的上传文件夹中看不到任何文件。除了 php 设置中的更改外,脚本中没有任何更改,因为我必须请求我的主机按照以下 PHP 设置进行操作:

max_execution_time 60
memory_limit 128M
post_max_size 32M
upload_max_filesize 32M
allow_url_fopen = On (this was the last change, which I believe is the causing the issue).

这是我的上传脚本:

$ds = DIRECTORY_SEPARATOR;
$storeFolder = "uploads/";
$fileupload = basename( $_FILES['file']['name']);
$fileType = $_FILES['file']['type'];
$fileSize = $_FILES['file']['size'];
$tempFile = $_FILES['file']['tmp_name'];
$targetPath = dirname( __FILE__ ) . $ds. $storeFolder . $ds;
$targetFile =  $targetPath. $fileupload;
move_uploaded_file($tempFile,$targetFile);  

注意:我并不是要上传一个大文件,就像我说的,脚本没有通过任何错误,但我无法在我的上传文件夹中看到这些文件。

我什至不确定这是否是因为我的 PHP 设置更改。非常感谢任何帮助!

很确定应该是:

move_uploaded_file($_FILES['file']['tmp_name'], 'uploads/'.basename($_FILES['file']['name']));

我认为您的设置是正确的,但是您的 php 代码中有错误,即您指定目录以存储文件的行。您可以使用简单的

$storeFolder = "uploads/";
$fileupload = basename($_FILES['file']['name']);
$fileType = $_FILES['file']['type'];
$fileSize = $_FILES['file']['size'];
$tempFile = $_FILES['file']['tmp_name'];
$targetFile =  $storeFolder.$fileupload;
if(move_uploaded_file($tempFile,$targetFile)){
    echo 'file uploaded' ;
else
    echo 'file not uploaded';
}