3

我正在尝试使用 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>

上传.php

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

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

谁能告诉我我们是否可以将 $_FILES 变量用于 GET 方法?如果是,那么请指出上面示例代码中的问题所在。谢谢你。

4

5 回答 5

3

你需要做:

<form action="someaction.php" method="post" enctype="multipart/form-data">
于 2013-10-07T09:32:40.283 回答
3

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

于 2013-10-07T09:31:03.947 回答
2

将此添加到您的表单标签中:

enctype = multipart/form-data
于 2013-10-07T09:31:48.033 回答
1

您应该通过邮寄方式发送您的表格并指定此表格将包含一个文件

<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>

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

于 2013-10-07T09:44:28.690 回答
1

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

于 2013-10-07T09:48:17.237 回答