【问题标题】:Access form uploaded file information访问表单上传的文件信息
【发布时间】:2016-04-12 15:22:14
【问题描述】:

我有一个应用程序向我的服务器发送请求,你可以看到下面的代码:

Method: POST
multipart/form-data; boundary=—————————14737809831466499882746641449
Content-Type Content-Disposition: form-data; name=\'Stackoverflow\'; filename=\'.%@\'\r\n
Content-Type: application/octet-stream\r\n\r\n

这个请求有效,我在我的 PHP 服务器中收到了一个真实的请求,问题是我不知道用 PHP 捕获这些值,因为命令 $_GET['name'] 和 $_POST['name'] 不工作。

如何处理这些参数?

【问题讨论】:

  • 尝试制作$_REQUEST['name']
  • Content-Type 标头似乎是错误的。查看stackoverflow.com/questions/14962592/… 了解带有文件上传的内容类型。
  • 您在表单中发布了什么?您要上传文件吗?
  • @LelioFaieta 是的,我上传了一个文件..
  • 然后看看$_FILES数组,不是get也不是post。您将找到该文件和所有相关信息

标签: php


【解决方案1】:

这并不能解决问题。

你是这样打开网站的吗:http://www.example.com/index.php?getvar=test

或类似:http://www.example.com/index.php

?

在第二种情况下,它无法获得 $_GET 值,因为没有变量

在第一种情况下,尝试检查变量是否存在:if(isset($_GET['getvar']))

并在使用前检查 $_POST 变量是否存在。

如果不是,你应该检查你的代码并纠正你的错误。

如果您需要更多帮助,请在此处发布 php 代码。

【讨论】:

  • 那么 $_GET 将不起作用。 $_GET 在我的第一个示例链接中获取“=”之后的值,“=”之前的值在“[]”括号中。^^
  • 尝试通过在 index.php 之后添加“?variable=value”向您发送价值^^
  • 如果我解决了您的问题,请标记我为回答者^^
【解决方案2】:

你应该查看 $_FILES['filename'] ('filename' 是包含文件的参数名称),会有关于上传文件的信息。

它包含数组,您可能想要从中获取“tmp_name”键($_FILES['filename']['tmp_name']),其中包含存储文件的临时位置。此临时文件将在请求结束后被删除,因此您需要将其移至其他位置。

不确定文档在这种情况下是否有帮助,但确实有:

http://php.net/manual/en/reserved.variables.files.php

【讨论】:

    猜你喜欢
    • 2012-05-07
    • 1970-01-01
    • 1970-01-01
    • 2011-09-09
    • 1970-01-01
    • 1970-01-01
    • 2020-08-15
    • 2013-02-06
    • 1970-01-01
    相关资源
    最近更新 更多