【问题标题】:Uploading profile pictures to users separate folder将个人资料图片上传到用户单独的文件夹
【发布时间】:2015-07-10 20:58:33
【问题描述】:

我想知道如何将图片/文件(pdf、ppt、doc)放入用户各自的文件夹中。就像他/她上传她的头像并且我希望它上传到路径:- www.oursite.com/uploads/profile_pics/username/filename.jpg。

我的问题是我怎样才能创建那个 username 目录。下面是sn-p的代码:-

if (isset($_FILES['pic']['name']))
{
  $_FILES['pic']['name'] = $pic_uniq_id;//already set using uniqid()
  $img_title = $_FILES['pic']['name'];
  $target_dest = "uploads/#profile_faces/HERE USERNAME FOLDER/".$img_title;
  $move = move_uploaded_file($_FILES['pic']['tmp_name'], $target_dest);
  if(!$move) {
    $img_msg = "<p class='pic_warning' color='red'><font color='red'><b>
    Sorry! Upload failed. Try again</b></font></p>";
    include 'includes/uploadprofilepicture.inc';
     exit();
  }else {//go on...}

如何使用用户名创建该目录?

【问题讨论】:

标签: php mysqli


【解决方案1】:

使用创建用户名目录,

mkdir("uploads/#profile_faces/".$username);

【讨论】:

    【解决方案2】:

    你可以这样做:

    $user = "Username";
    $path = "uploads/#profile_faces/".$user;
    mkdir($path);
    $target_dest = $path."/".$img_title;
    

    【讨论】:

      【解决方案3】:

      您必须从会话中获取用户名。因此,如果您将用户名保存在会话变量中,例如 $_SESSION['username'],您的代码将是:

      当你创建一个目录时,你必须确保你对它有写权限。

      if (isset($_FILES['pic']['name'])) {
      
            if (!file_exists("uploads/#profile_faces/" . $_SESSION['username'] . "/")) {
              mkdir("uploads/#profile_faces/" . $_SESSION['username'] . "/", 0777, true);
            }
      
            $_FILES['pic']['name'] = $pic_uniq_id;//already set using uniqid()
            $img_title = $_FILES['pic']['name'];
            $target_dest = "uploads/#profile_faces/" . $_SESSION['username'] . "/".$img_title;
            $move = move_uploaded_file($_FILES['pic']['tmp_name'], $target_dest);
      
            if(!$move) {
              $img_msg = "<p class='pic_warning' color='red'><font color='red'><b>
              Sorry! Upload failed. Try again</b></font></p>";
              include 'includes/uploadprofilepicture.inc';
               exit();
            }
      
      } else {
          //go on...
      }
      

      【讨论】:

        猜你喜欢
        • 2012-11-12
        • 1970-01-01
        • 1970-01-01
        • 2020-11-02
        • 2017-05-04
        • 2014-10-05
        • 2020-01-10
        • 2014-04-14
        • 1970-01-01
        相关资源
        最近更新 更多