如何自己设置DIrectory上传文件

时间:2017-09-22 08:35:12

标签: php file-upload upload

我创建了一个上传文件。如果我在目标文件名中添加目标目录,我的文件不会上传。但我只是设置目标文件名而没有目标目录,我成功上传但我的文件在我的控制器的一个目录中。我该怎么办?

我的代码与目标目录

    $target_dir = "img/psychotest/";
    $target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
    $imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
    $target_file = $target_dir.$_POST['DocType'] . "_" . $_POST['email'] .".". $imageFileType;

结果:我的文件没有上传

我的代码没有目标目录

    $target_dir = "img/psychotest/";
    $target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
    $imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
    $target_file = $_POST['DocType'] . "_" . $_POST['email'] .".". $imageFileType;

结果:成功上传

1 个答案:

答案 0 :(得分:0)

使用def insert_in_list(x, tree, index=0): if not tree: return x elif isinstance(tree[0], list): return [insert_in_list(x, tree[0])] + insert_in_list(x, tree[1:]) elif x < tree[index]: tree.insert(index, x) return tree else: return insert_in_list(x, tree, index+1) 确定目标目录的绝对路径。

如果返回false,则路径错误且不存在!当然这些是你在使用相对链接时遇到的问题,所以realpath是解决它的好方法!

http://php.net/manual/en/function.realpath.php

如果 返回false,您可以尝试回显realpath('img/psychotest/')以找出PHP在该时间点实际所在的目录。然后调整您的路径,直到getcwd()为您的目标目录提供完整的绝对路径。

http://php.net/manual/en/function.getcwd.php