希望简单的问题,我有一个桌面应用程序,允许用户使用表单将文件上传到服务器,表单将数据发送到网站上的受保护文件,就像这样。Site_root/protected_folder/myfile.php 。如果您通常使用 php 文件上传命令,您将在“protected_folder”目录中操作,这是我不想要的。
我想在根目录上的图像文件中添加一些东西,比如 Site_root/images/ ,如果不进入 ftp 根目录,你会如何做呢?
通常的方法是调用move_uploaded_file(),您可以根据自己的喜好设置目标路径。中的文件名$_FILES['tmp_name']
通常指向一个临时文件夹,可能会被删除,恕不另行通知。
您可以使用绝对路径/path/to/images/
或使用相对路径../images/
假设您使用move_uploaded_file
第二个参数获取您希望上传到的目录。如果这篇文章没有,也许向您展示代码可能会有所帮助。
move_uploaded_file()
如果你只是用斜杠开始你的路径,将允许你相对于根目录放置上传
$newFileDir = '/username/public_html/websiteroot/subdir/yourfile.jpg';
move_uploaded_file($_FILES['postname']['tmp_name'],$newfileDir);
您可以简单地在路径中使用 copy() 和双点 (../) 来指定根目录来复制上传的文件。我正在使用相同的。您可能希望更改文件名,以便在目录中存在唯一文件名,这将发生错误。扩展名也将相同。//
$filename = stripslashes($_FILES['postname']['name']);
$extension = getExtension($filename);
$newfilename ='photo_your_filename'.time().'.'.$extension;
$newFileDir = '../subdir/'.$newfilename;
copy($_FILES['postname']['tmp_name'],$newfileDir);