【问题标题】:PHP HTML FORM sends _POST data but not _FILESPHP HTML FORM 发送 _POST 数据但不发送 _FILES
【发布时间】:2014-03-28 19:36:27
【问题描述】:

我有一个发送文件的表单,但提交后无法调用它。

表格:

<form class="form-inline" action="#" id="login" method="post">
<input type="file" name="file" id="file">
<input type="hidden" name="test" value="testy"> 
<input class="btn btn-primary btn-block" type="submit" name="submit" value="Go">
</form>

testy 的值正常,但上传后 _FILES 中没有。

当我从一个页面发送到另一个页面时,这是有效的,但由于我将所有内容都移动到同一页面上,它不再有效。我错过了什么?

$_POST['test'] 显示testy

$_FILES['file'] 显示为空

【问题讨论】:

    标签: php html forms


    【解决方案1】:

    您的表单中需要enctype="multipart/form-data" 属性:

    <form class="form-inline" action="#" id="login" method="post" enctype="multipart/form-data">
    <input type="file" name="file" id="file">
    <input type="hidden" name="test" value="testy"> 
    <input class="btn btn-primary btn-block" type="submit" name="submit" value="Go">
    </form>
    

    【讨论】:

    • 谢谢,我知道这很愚蠢。这会搞砸任何不包含文件上传的表单(这是一个可选字段)。
    • 不,对于没有文件上传的表单应该没有问题
    • 完成了,当时还为时过早。
    • 对不起,我有点鲁莽
    • 愚蠢的 StackOverflow 和他们的 15 分钟规则! :) 再次感谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多