Ajax将提交的表单FILE提交给另一个PHP PARSER

时间:2017-12-14 21:27:16

标签: php ajax forms post jscript

我无法获得正确的语法,并且基本上将文件道具/完整信息解析为解析器(在父页面提交表单之后) - 如果您理解我的意思。我发布了代码的基本要点。如果有人能够看到应该发布的内容或其他方式来Ajax文件,将不胜感激。

这是上传页面(html)中的表单

<input type="file" id="file1" name="file1" accept="image/*" required />

从那里发布到“个人资料”页面,该页面显示图像并运行一些处理程序等。但是iv涉及到某些人的代码进入了一个进度条而且iv在这部分有点卡住了。转发到解析器的正确方法.. 下面的脚本解析但是在一个错误的mannor中。我收到错误未定义变量FILE1

在个人资料页面中,我尝试了另一个隐藏的表单

<form method='post' enctype='multipart/form-data' autocomplete='on'>
<input type='file' id='file1' style='display:none;' name='file1'>unsure about the following--> VALUE="<?PHP $_FILES['file1'] ?>">
</form>

但我不能让这个剧本发布完整的道具。它只发送名称详细信息,因为我设法获得文件名回读和文件大小。但仅此而已...我想我发布的表单和脚本都错了。

  <script>
            /* Script written by Adam Khoury @ DevelopPHP.com */
            /* Video Tutorial: http://www.youtube.com/watch?v=EraNFJiY0Eg */
            function _(el){
                return document.getElementById(el);

            }
            $(document).ready(function uploadFile(){
                var file = _("file1").files[0];
                // alert(file.name+" | "+file.size+" | "+file.type);
                var formdata = new FormData();
                formdata.append("file1", file);
                var ajax = new XMLHttpRequest();
                ajax.upload.addEventListener("progress", progressHandler, false);
                ajax.addEventListener("load", completeHandler, false);
                ajax.addEventListener("error", errorHandler, false);
                ajax.addEventListener("abort", abortHandler, false);
                ajax.open("POST", "file_upload_parser.php");
                ajax.send(formdata);
            });
            function progressHandler(event){
                _("loaded_n_total").innerHTML = "Uploaded "+event.loaded+" bytes of "+event.total;
                var percent = (event.loaded / event.total) * 100;
                _("progressBar").value = Math.round(percent);
                _("status").innerHTML = Math.round(percent)+"% uploaded... please wait";
            }
            function completeHandler(event){
                _("status").innerHTML = event.target.responseText;
                _("progressBar").value = 100;
            }
            function errorHandler(event){
                _("status").innerHTML = "Upload Failed";
            }
            function abortHandler(event){
                _("status").innerHTML = "Upload Aborted";
            }
            </script>

P.s肯定是html中的一些错误,但它只是简写..脚本是复制粘贴的。

0 个答案:

没有答案