Javascript 为什么我的文件没有上传到Opera Mini?

Javascript 为什么我的文件没有上传到Opera Mini?,javascript,php,post,file-upload,opera-mini,Javascript,Php,Post,File Upload,Opera Mini,我正在开发一个网页,它在大多数浏览器中都能很好地工作,但在OperaMini中却不行。不幸的是,我上传文件时遇到问题。我已经试着解决它好几个小时了。我有一个javascript: $("body").append('<form id="opera-mini-uploader" method="POST" enctype="multipart/form-data"><input type="hidden" name="hiddenValues" i

我正在开发一个网页,它在大多数浏览器中都能很好地工作,但在OperaMini中却不行。不幸的是,我上传文件时遇到问题。我已经试着解决它好几个小时了。我有一个javascript:

                $("body").append('<form id="opera-mini-uploader" method="POST" enctype="multipart/form-data"><input type="hidden" name="hiddenValues" id="hidden-values" value=""><input type="file" name="src"><input type="submit" id="upload-opera-mini" name="upload-opera-mini" value="upload"></form>');
                $("#opera-mini-uploader").submit(function() {
                    $("#hidden-values").val(JSON.stringify({
                        "product-title": $("#product-title").val(),
                        "product-description": $("#product-description").val(),
                        "category-id": $("#category-id").val(),
                        "product-price": $("#product-price").val(),
                        "varsity": $("#varsity").val(),
                        "campus-of-varsity": $("#campus-of-varsity").val(),
                        "telephone": $("#telephone").val(),
                        "repeat-telephone": $("#repeat-telephone").val(),
                        "iagree": $("#iagree").prop("checked")
                    }));
                });
$(“正文”)。附加(“”);
$(“#opera mini uploader”).submit(函数(){
$(“#隐藏值”).val(JSON.stringify({
“产品名称”:$(“#产品名称”).val(),
“产品说明”:$(“#产品说明”).val(),
“类别id”:$(“#类别id”).val(),
“产品价格”:$(“#产品价格”).val(),
“校队”:$(“#校队”).val(),
“大学校园”:$(“#大学校园”).val(),
“电话”:$(“#电话”).val(),
“重复电话”:$(“#重复电话”).val(),
“iagree”:$(“iagree”).prop(“选中”)
}));
});

它使用文件输入创建表单,并处理提交以在文件上载时保存其他属性。属性保存得很好,但文件未上载。。。表单显示在正文的末尾,当我选择一个文件并尝试上载它时,它没有成功。我没有看到错误,但是文件也没有上传。我的问题是:我做错了什么?我应该如何实现文件上传,以便在服务器上实际拥有一些文件?文件上传适用于其他浏览器,但我在这里为其创建了一个单独的版本,因为Opera Mini无法符合这些奇特的功能。

经过长时间的试验,我找到了答案:

$("body").append('<form id="opera-mini-uploader" method="POST" enctype="multipart/form-data"><input type="hidden" name="hiddenValues" id="hidden-values" value=""><input type="file" name="src"><input type="submit" id="upload-opera-mini" name="upload-opera-mini" value="upload"></form>');

它就像一个魔咒,没有额外的改变。

你的PHP文件的
$\u文件是空的吗?我有一个if-else,使用flourishlib的fRequest::isPost()。如果这是真的,我将检查$\u文件,如果它有一个“src”元素,那么图像将被处理。它在其他浏览器上运行得非常好,但对于Opera Mini,它甚至没有达到目的。然而,我知道这篇文章是成功的,因为我保存的值会在单击“上载”按钮后重新输入并自动验证。
<form id="opera-mini-uploader" method="POST" enctype="multipart/form-data"><input type="hidden" name="hiddenValues" id="hidden-values" value=""><input type="file" name="src"><input type="submit" id="upload-opera-mini" name="upload-opera-mini" value="upload"></form>