-2

我有一个目标变量,当我上传文件时它会转到这个目标:

<?php
   // Edit upload location here
   $destination_path = getcwd().DIRECTORY_SEPARATOR;

   $result = 0;

   $target_path = $destination_path . basename( $_FILES['fileImage']['name']);

   if(@move_uploaded_file($_FILES['fileImage']['tmp_name'], $target_path)) {
      $result = 1;
   }

   sleep(1);
?>

我想知道的是如何编辑上传目的地?假设我希望将文件上传到目的地以转到 portal.hud.ac.uk/Upload_App/Files/ 那么我该如何更改呢?

4

1 回答 1

2

只需更改$destination_path为您想要的任何内容。现在的方式(getcwd().DIRECTORY_SEPARATOR),它将保存到当前工作文件夹(除非更改,否则它是包含脚本的文件夹)。这是非常不安全的,因为我可以上传一个名为的文件index.php,任何访问您网站的人都会运行我选择插入的任何恶意代码。

将它保存在 webroot 之外更安全,因为它不能通过 HTTP 直接访问。例子:

$destination_path = $_SERVER['DOCUMENT_ROOT']."/../uploads/";

这将保存到uploads包含 Web 根目录(可能是public_html)的文件夹中找到的文件夹。

于 2012-04-09T16:45:08.113 回答