0

我在我的电脑上使用 wampserver 并写了一个简单的 html 表单:

 <form name="test" action="upload_file.php" method="post">
 <label for="file">Filename:</label>
 <input  type="file" name="picurl" id="file" ><br>
 <input  type="submit" name="submit" value="Submit"  >
 </form>

当我单击“浏览”并打开一个文件时,例如 pil.png 它在输入文本区域中显示完整路径(C:\Users\hope\Desktop\images\pil.png)我希望保存这个确切的链接但是当我试图抓住它 $name = $_POST["name"];它只显示 this-"pil.png" 而不是完整路径。为什么?

4

4 回答 4

4

您无法获得完整的本地文件路径。只有文件数据本身及其名称被提交给服务器。输入元素中显示的文件路径只是视觉样式,它没有任何功能。

出于安全原因,文件元素非常有限,这是一件好事。

于 2012-12-07T08:55:49.337 回答
1

浏览器不会提交完整路径,因为这将是一个隐私问题,您会将文件系统结构暴露给服务器。它与服务器无关,服务器不需要知道文件在客户端文件系统上的位置。

于 2012-12-07T08:55:16.400 回答
-2

您只得到 file_name 因为您不要求路径。

要获得完整路径,您必须使用

public string SplFileInfo::getRealPath ( void )
于 2012-12-07T08:57:33.080 回答
-2

try

var_dump($_FILES['picurl']);
于 2012-12-07T09:02:10.867 回答