$tmpName = basename($_FILES['uploadfile']['tmp_name']);
$rightname = basename($_FILES['uploadfile']['name']);
move_uploaded_file($_FILES['uploadfile']['tmp_name'], $workDir."/".$tmpName) or die("Cannot move uploaded file to working directory");
if(!is_writable($_POST['filetype']))
die('You cannot upload to the specified directory, please CHMOD it to 777.');
move_uploaded_file($_FILES['uploadfile']['tmp_name'], $_POST['filetype'].'/'.$rightname) or die("Cannot move uploaded file to destination directory");
我有一个表单,可以上传文件并将数据发布到包含上述代码的 php 脚本中。上面的代码部分工作,如第一个“move_uploaded_file”工作,上传的文件从 var/tmp 文件夹移动到 $workDir 文件夹。该文件的名称与服务器在将上传的文件放在具有临时名称的 tmp 文件夹中时给出的名称相同,然后再将其移动到目标目录。我觉得这很有效,因为在我提交表单后,当服务器将文件放在 tmp 文件夹中时,我没有重命名服务器给文件的临时名称。因为第二个“move_uploaded_file()”因指定的错误而死。该目录是可写的。它被修改为“777”。没有问题。这就是我将文件名称更改为所需名称的地方。