使用get方法检索输入类型文件值

时间:2013-10-07 09:29:04

标签: php

我正在尝试使用GET方法更新图像

user_form.php

<form action='upload.php' method='get'>  
  <input type='file' name='user_img' />
  <input type='text' name='username' />
  <input type='submit' name='update' value='update'>
</form>

upload.php的

if(isset($_GET['update']))
{
  echo 'username: '.$_GET['username'];
  echo 'file name: '.$_FILES['user_img']['tmp_name'];
}

我获得了正确的用户名值,但是,文件名的空白值。

如果我们可以使用$ _FILES变量用于GET方法,有人可以告诉我吗?如果是,那么请指出我在上面的示例代码中出错的地方。谢谢。

5 个答案:

答案 0 :(得分:3)

您无法使用GET HTTP请求上传文件。文件在HTTP正文中发送,这需要POST或PUT请求。

答案 1 :(得分:2)

你需要这样做:

<form action="someaction.php" method="post" enctype="multipart/form-data">

答案 2 :(得分:1)

将此添加到您的表单标记:

enctype = multipart/form-data

答案 3 :(得分:0)

您应该通过邮寄方式发送表单,并指定此表单将有一个文件

<form action='' method="post" enctype="multipart/form-data"> 
  <input type="hidden" name="MAX_FILE_SIZE" value="30000" /> 
  <input type='file' name='user_img' />
  <input type='text' name='username' />
  <input type='submit' name='update' value='update'>
</form>

出于安全性和性能的原因,最好还是指出要发送的文件的最大大小。

答案 4 :(得分:0)

如果您要上传/使用文件,则需要在表单中添加enctype = multipart/form-data