php - 如何从子域上传表单将上传的文件存储在主域的目录中

标签 php phpmyadmin webserver

请问如何将上传的文件存储在我的主域目录中,应该是这样的:

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/

相关文章:

php - 如何在 SQL 语句中添加 QBE 过滤器

php - 如何在 Symfony 表单字段上使用 setAttribute

php - 查询不插入数据

php - MySQL 错误 1045 (28000)

phpmyadmin - phpmyadmin 中烦人的警告

python - "builtin server"如何与 Flask 网络应用程序一起工作?

php - 如何使用 php 或 javascript 在 Android 上运行 .jar 或 .apk 文件

PHP动态访问变量值

php - 直接的SQL查询工作和通过PHP的SQL查询不是吗?

apache - sonarqube 升级 5.2 -> 5.6 后,WebServer 不再运行