请问如何将上传的文件存储在我的主域目录中,应该是这样的:
move_uploaded_file(https://example.com/uploads)
最佳答案
第一步是从这里开始处理上传的文件:
http://php.net/manual/en/function.move-uploaded-file.php
第一个例子几乎就是你想要的:
<?php
$uploads_dir = '/uploads';
foreach ($_FILES["pictures"]["error"] as $key => $error) {
if ($error == UPLOAD_ERR_OK) {
$tmp_name = $_FILES["pictures"]["tmp_name"][$key];
// basename() may prevent filesystem traversal attacks;
// further validation/sanitation of the filename may be appropriate
$name = basename($_FILES["pictures"]["name"][$key]);
move_uploaded_file($tmp_name, "$uploads_dir/$name");
}
}
?>
您需要进行两次编辑。 $uploads_dir
需要有文件上传位置的相对路径。假设您的表单位于 subdomain.example.com/
子域的根目录中,您希望将它们移动到 public_html/uploads
。您的新 $uploads_dir
应如下所示:
$uploads_dir = __DIR__ . '/../public_html/uploads';
__DIR__
将为您提供运行 php 文件的当前目录。这允许您创建到其他目录的相对路径。
第二个编辑是更新 $_FILES
数组以循环遍历您正在上传的内容的正确结构。它可能不是示例中的图片。
关于php - 如何从子域上传表单将上传的文件存储在主域的目录中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44986974/