2012-09-27 105 views
0

由于某种原因,我无法获取$ _FILES数组以包含上载在我的表单上选定的内容。从我读过的表单看起来没问题,所有其他变量都收到了。

每次我提交表单时,$ _FILES数组的var_dump都有0个条目。

对于这篇文章我已经删除了其他领域为了简洁起见,因为他们工作。

<form name="addFact" id="addFact" action="add_fact.php" method="post" enctype="multipart/form-data" onsubmit="return validateStatus();" > 
    <input type="file" id="myImage" name="myImage" style="width:450px;"/><br /> 
</form> 

后,我重装我使用以下方法来检查$ _FILES数组:

echo "- Files - <br>\n"; 
echo "<pre>\n"; 
var_dump($_FILES); 
echo "</pre>\n"; 

但结果是空的,每次:

文件: 阵列(0){ }

更新 对不起,没有实现验证统计我们还在那里..但是这是检查是否提交表单或不

function validateStatus() { 
    jQuery("#addFact").validationEngine({scroll: false}); 
    var valid = $("#addFact").validationEngine('validate'); 
    if (valid == true) { 
     submitForm('addFact'); 
    } 
    return false; 
} 

虽然我怀疑这是问题的一部分,因为形式的所有属性仍设置包括文件成功提交JS场等

哦..和笑..另一个功能.. :) ......这里是submt形式功能:

function submitForm(formName,message) { 
    $.ajax({ 
     data: $("#" + formName).serialize(), 
     type: $("#" + formName).attr('method'), 
     url: $("#" + formName).attr('action'), 
     success: function(response) { 
      $('#load_target').html(response); 
     } 
    }); 
    return false; 
} 

load_target是我加载这个索引页面上的div PHP文件与Ajax。 - 希望这是所有清楚了吧:)

此外,要扎绳的形式不张贴任何东西。这里的任何conrens是该职务的var_dump

array(11) { 
    ["action"]=> string(4) "save" 
    ["category"]=> string(1) "3" 
    ["startDate"]=> string(10) "09-27-2012" 
    ["expireDate"]=> string(10) "11-27-2012" 
    ["title"]=> string(10) "Test Title" 
    ["subtitle"]=> string(10) "Test Title" 
    ["include_image"]=> string(3) "yes" 
    ["img_loc"]=> string(4) "left" 
    ["img_size"]=> string(2) ".3" 
    ["scroll"]=> string(1) "1" 
    ["fact_text"]=> string(27) "there's something about her" 
} 
+0

实际上你是在上传一个文件吗?如果输入字段留空,$ _FILES中的索引可能不存在。 – Flosculus

+4

什么是“validateStatus()”?它可以操纵那个领域吗? –

+0

验证正在填充的所有字段(必填字段)的状态检查,然后提交表单,如果一切正常,对此抱歉。 – Silvertiger

回答

1

的结果,如果你正在使用jQuery Mobile的加入data-ajax =“false”到表格标签