move_uploaded_file(/Advanced Java Programming.pdf): 无法打开流:权限被拒绝

move_uploaded_file(/Advanced Java Programming.pdf): failed to open stream: Permission denied

因此,我正在开发一个系统,在该系统中,在公司工作的人可以将文件上传到系统,该系统将按部门分类。我已设法获取文件信息(名称、大小、类型),但在尝试上传文件时出现问题。

我得到:

move_uploaded_file(/Advanced Java Programming.pdf): failed to open stream: Permission denied

move_uploaded_file(): Unable to move 'C:\xampp\tmp\php1B99.tmp' to '/Advanced Java Programming.pdf'

我给大家设置了需要上传文件的文件夹的权限(777)。 这是我的代码

<?php

$department = $_POST['department'];
$file = $_FILES['fileToUpload'];

echo "<b>Department: </b>" . $department . "<br>";
echo "<b>Name: </b>" . $file['name']. "<br>";
echo "<b>Size: </b>" . $file['size'] . " bytes<br>";
echo "<b>Type: </b>" . $file['type'];

move_uploaded_file($file['tmp_name'], "/". $file['name']);

?>

尝试为您的目的地使用绝对路径,或者至少以 DIR 常量开头,“/”不是有效的 (Windows) 路径。 还可以考虑使用常量 DIRECTORY_SEPARATOR,因为“/”是 *nix 标准,但是当您在 Windows 上使用 运行 时,它应该是“\”——使用常量将为每个系统保留正确的斜杠。