我正在尝试将文件发送到服务器但没有成功。 我有这个:
HTML (它不在表单中):
<td class="td_logo">
<input type="file" accept="image/*" multiple="false" name="realField" id="realField">
</td>
我有一个触发JS代码的按钮。
JS
function sendRequest(url, firmObj){
new Ajax.Request(url,
{
method: 'post',
postBody: 'firmObj='+ Object.toJSON(firmObj),
onSuccess: function(){}
});
}
并且url调用PHP。
PHP
if( isset($_POST["firmObj"]))
{
$firmObj = json_decode($_POST["firmObj"]);
var_dump($firmObj);
}else{ echo "FAIL"; }
if($_FILES['realField']['name'])
{
print_r($_FILES['realField']['name']);
}else{ echo "FAIL";}
var_dump($firmObj)
只显示我的表格中的文件名和其他输入...但$_FILES['realField']['name']
始终为false并且喊“失败”!!
如何将$ _FILES填入输入数据到原型?
谢谢!!
答案 0 :(得分:1)
Javascript无法读取本地文件(这将是一场安全噩梦),因此AJAX并不真正支持上传。像this one这样的脚本通过在隐藏的iframe中创建表单并提交它来工作。