最近做个PHP的项目,结果调程序是发现move_uploaded_file无法执行,想了很久都没有想出处理的办法。
请各位高手指点一二。
(我的代码:
function uploadFile($dir, $file, $fileComment) {
$fileName = strtolower($file["name"]);
$fileTmpName = $file["tmp_name"];
$fileSize = $file["size"];
$folderPath = $this->folderPath($dir);
$fileName = $this->secureFile($fileName); if (file_exists($this->root . "files" . $folderPath . SEP . $fileName)) {
$this->error = 5;
return false;
} if(move_uploaded_file($fileTmpName, $this->root . "files" . $folderPath . SEP . $fileName)){ $q = "INSERT INTO " . TABLE_PREFIX . "files (id_folder, id_user, file_name, file_size, file_mtime, file_comment) VALUES ('" . $dir ."', '" . $_SESSION["Sid_user"] . "', '" . quote($fileName) . "', '" . $fileSize . "', NOW(), '" . quote($fileComment) . "')";
query($q); $this->updateFolderSize($dir, $fileSize, "+");
$this->updateFolderTime($dir);
return true;
}
return false;
})
请各位高手指点一二。
(我的代码:
function uploadFile($dir, $file, $fileComment) {
$fileName = strtolower($file["name"]);
$fileTmpName = $file["tmp_name"];
$fileSize = $file["size"];
$folderPath = $this->folderPath($dir);
$fileName = $this->secureFile($fileName); if (file_exists($this->root . "files" . $folderPath . SEP . $fileName)) {
$this->error = 5;
return false;
} if(move_uploaded_file($fileTmpName, $this->root . "files" . $folderPath . SEP . $fileName)){ $q = "INSERT INTO " . TABLE_PREFIX . "files (id_folder, id_user, file_name, file_size, file_mtime, file_comment) VALUES ('" . $dir ."', '" . $_SESSION["Sid_user"] . "', '" . quote($fileName) . "', '" . $fileSize . "', NOW(), '" . quote($fileComment) . "')";
query($q); $this->updateFolderSize($dir, $fileSize, "+");
$this->updateFolderTime($dir);
return true;
}
return false;
})
<form enctype="multipart/form-data" action="URL" method="POST">
2.检查参数:
$_FILES['file']['name'];
$_FILES['file']['tmp_name'];
$_FILES['file']['size'];
2. 检查一下上传路径的文件夹是否存在并且有权限。
这个代码以前在别人电脑上可以运行,后来转到我的电脑上就运行不了了。我想应该是move_uploaded_file
文件夹权限问题,那文件夹的权限问题怎么能够修改呢?
http://www.w3school.com.cn/php/func_filesystem_mkdir.asp
看是在WINDOWS下还是LINUX下了,如果是WINDOWS下,右键文件夹进行安全设置即可,如果是linux,需要使用命令行来更改权限