发布输入类型文件问题没有发布值

时间:2011-08-16 23:46:21

标签: php html

我有一个表单,我发布了不同的字段,除了输入文件类型外,发布的每种类型的字段似乎都有效。

我正在使用var_dump($_POST);,所有其他字段都在那里,但输入类型文件中没有。

我的表单部分如下所示:

<form enctype="multipart/form-data" id="ajax-form" action="index2.php" method="POST" data-ajax="true">

并且适用于其他一切。

如果输入类型文件中有任何不同之处?

<input type="text" id="myid" name="myid" value="" /> ..This posts value

<input id="theimage" name="theimage" type="file" /> .. does not post value

任何想法?

2 个答案:

答案 0 :(得分:33)

文件存储在$ _FILES中,而不是$ _POST

http://php.net/manual/en/reserved.variables.files.php $ _FILES变量

http://www.php.net/manual/en/features.file-upload.php PHP文件上传手册。

处理文件(无错误检查):

$ROOT = "/path/to/store/files";
foreach($_FILES as $file => $details)
{   // Move each file from its temp directory to $ROOT
    $temp = $details['tmp_name'];
    $target = $details['name'];
    move_uploaded_file($temp, $ROOT.'/'.$target);
}

有关更多示例,另请参阅http://www.php.net/manual/en/function.move-uploaded-file.php

答案 1 :(得分:0)

实际上,如果你尝试使用Firefox(> 13),你可以获得发布的值。但是,如果您使用的是Chrome或Safari,则无法获得发布值。我认为它与浏览器有关。