每个用户php的特定文件夹

时间:2013-08-21 07:36:28

标签: php

我必须在php中创建自定义模块,方案是我正在尝试将用户pdf文档上传到每个用户的单独文件夹中。例如上传文件夹 - &gt; User1文件夹 - &gt; pdf1.pdf。< / p>

对于个人用户,应该只有一个文件夹,以便用户可以在指定的文件夹上上传多个文件。

总结我有一个带有2个浏览按钮的表单,当用户提交文件夹时会在默认文件夹(Uploads)中创建名称User1,然后他的所有3个文件都应该上传到User1文件夹中。

我可以轻松地在主要上传文件夹上传文件,但无法将文件移动到特定的用户文件夹。

<?php
if ($_POST['submit']) {
    if (isset($_FILES['image'])) {
        $errors = array();
        $file_name = $_FILES['image']['name'];
        $file_size = $_FILES['image']['size'];
        $file_tmp = $_FILES['image']['tmp_name'];
        $file_type = $_FILES['image']['type'];

        $file_ext = strtolower(end(explode('.', $_FILES['image']['name'])));
        $extensions = array("pdf", "docx", "doc");

        if (in_array($file_ext, $extensions) === false) {
            echo "Extension not allowed, please choose a pdf,docx or doc format.";
        }
        if ($file_size > 2097152) {
            echo 'File size must be exactly 2 MB';
        }
        if (empty($errors) == true) {
            $path = 'uploads/' . $file_name;

            //mkdir($path, 0777, true);
            //$dirn=mkdir('uploads/'.$file_name,0777,true);


            move_uploaded_file($file_tmp, $path);

            echo "Success";
        } else {
            print_r($errors);
        }
    }
}
?>

HTML

<form action="upload.php" method="post" enctype="multipart/form-data">
    <input type="file" name="image">
    <input type="file" name="image2">
    <br>
    <input type="submit" value="Upload" name="submit">
</form>

2 个答案:

答案 0 :(得分:2)

当用户创建了一个带有用户名的uploads文件夹中的目录....上传时就像这样...

$dir_path='uploads/' . $_SESSION['username'] . '/' . $file;

答案 1 :(得分:0)

取决于您存储用户ID的方式,可能类似于:

$path = 'uploads/' . $_SESSION['user-id'] . '/' . $file_name;