簡體   English   中英

根據唯一的用戶ID將PHP文件上傳到目錄

[英]PHP file upload to directory based upon unique user id

我似乎無法獲得將用戶ID變量($ id)放在文件路徑中的目錄。 直接上傳到成員文件夾沒有問題,但是一旦我嘗試注冊時根據用戶ID創建的唯一文件夾,就會遇到障礙。

到目前為止,這是我拼湊而成的內容:

<?php
$id = $_SESSION['id'];
$udir= "members/.$id./";
$ufile = $udir . basename($_FILES['file']['name']);
$allexts = array("jpg", "jpeg", "gif", "png");
$ext = end(explode(".", $_FILES["file"]["name"]));
if ((($_FILES["file"]["type"] == "image/gif")
    || ($_FILES["file"]["type"] == "image/jpeg")
    || ($_FILES["file"]["type"] == "image/pjpeg")
    || ($_FILES["file"]["type"] == "image/png"))
    && ($_FILES["file"]["size"] < 2000000)
    && in_array($ext, $allexts)){
    if (move_uploaded_file($_FILES['file']['tmp_name'], $ufile)) {
        echo "File upload was successful.";
    } else {
        echo "An error has occured. Please try again.";
    }
} else {
    echo "Invalid file type. Please try again.";
} ?>

嘗試這個

if(!is_dir($udir)){

    mkdir("members/".$id, 0777);
}

您的代碼:-

<?php
$id = $_SESSION['id'];
$udir= "members/".$id."/";

if(!is_dir($udir)){

    mkdir("members/".$id, 0777);
}

$ufile = $udir . basename($_FILES['file']['name']);
$allexts = array("jpg", "jpeg", "gif", "png");
$ext = end(explode(".", $_FILES["file"]["name"]));
if ((($_FILES["file"]["type"] == "image/gif")
    || ($_FILES["file"]["type"] == "image/jpeg")
    || ($_FILES["file"]["type"] == "image/pjpeg")
    || ($_FILES["file"]["type"] == "image/png"))
    && ($_FILES["file"]["size"] < 2000000)
    && in_array($ext, $allexts)){
    if (move_uploaded_file($_FILES['file']['tmp_name'], $ufile)) {
        echo "File upload was successful.";
    } else {
        echo "An error has occured. Please try again.";
    }
} else {
    echo "Invalid file type. Please try again.";
} 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM