使用php将文件上传到指定目录

时间:2013-09-02 19:00:49

标签: php

我正在尝试修改我的php脚本,允许我将iamges和文件上传到我程序中的特定文件夹。目前我有几个php文件返回我服务器上保存的所有文件的字符串,以及一个只将图像上传到服务器根目录的脚本。

例如,我的get目录脚本将返回如下内容:

  

Img1.jpg

     

Img2.jpg

     

Folder.folder

我已经得到了所以我可以点击并存储在此字符串中点击的内容,我想将其传递给我的php脚本,以便我可以将下一个图像上传到folder.folder而不是根。

我该怎么做呢?

我上传文件的php代码如下:

<?
    $uploaddir = './';
    $file = basename($_FILES['file']['name']);
    $uploadfile = $uploaddir . $file;

    print_r($_FILES);

    if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile)) {
        echo "http://ipAddress/serverFolder/{$file}";
     }
     else
     {
        echo "Failed to upload file";
      }
?>

是否有最好的做法去做我想做的事情?

我是PHP的新手,所以任何帮助都会受到赞赏。

2 个答案:

答案 0 :(得分:0)

将当前目录存储在会话变量中,然后在上传脚本中使用它。

点击链接时:

$_SESSION['directory'] = $_POST['directory'];

然后在您的上传脚本中:

$uploaddir = './'.$_SESSION['directory'];

之后,您必须执行某种验证,以确保上传的目录是您实际希望将文件上传到的地方。之后,您可以继续上传。

答案 1 :(得分:0)

如果我理解正确,您使用表单上传文件,并且您想要指定目录。 只需添加<input type="text" id="folder" name="folder">,您可以在其中编写目录路径,然后您可以在$uploaddir = $_POST['folder'];变量中写入它,假设您使用的是帖子。