Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用Mootools上传图像_Php_Upload_Mootools - Fatal编程技术网

Php 使用Mootools上传图像

Php 使用Mootools上传图像,php,upload,mootools,Php,Upload,Mootools,我正在用mootools创建一个ajax上传程序。当我删除ajax并简单地上传表单时,我会得到带有文件数据的$u文件。但是当我使用ajax版本时,$\u文件super-global是空的。表格的所有其他部分都存在。它的行为就像根本不发送图像一样,而只是在ajax版本中发送。感谢您的帮助。 谢谢 addEvent('domready',function(){ $('uploadphoto').addEvent('submit',函数(e){ //防止默认提交事件加载新页面。 e、 停止(); /

我正在用mootools创建一个ajax上传程序。当我删除ajax并简单地上传表单时,我会得到带有文件数据的$u文件。但是当我使用ajax版本时,$\u文件super-global是空的。表格的所有其他部分都存在。它的行为就像根本不发送图像一样,而只是在ajax版本中发送。感谢您的帮助。 谢谢


addEvent('domready',function(){
$('uploadphoto').addEvent('submit',函数(e){
//防止默认提交事件加载新页面。
e、 停止();
//(“this”指$('uploadphoto')元素)。
this.set('send',{onComplete:function(response){
$('response').set('html',response);
}});
//发送表格。
这个。send();
});
});

单靠Javascript无法做到这一点。你要么需要像SWFUpload这样的flash插件。或者使用新的。最后一个还不是所有浏览器都支持。所以现在就坚持第一种选择

还有一款HTML5上传软件,它为老款浏览器提供了自动回退功能——它很好地实现了这一功能,甚至实现了多文件上传,并提供了拖放支持,但遗憾的是,它缺乏一点可扩展性——我目前正试图实现一个允许我添加额外表单元素的功能——目前,仅提交文件输入文件


就在几分钟前,我发现——这终于奏效了。它是非常可配置的,允许我向表单数据的接收文件发送附加字段。虽然没有多个文件选择,但它似乎非常适合于简单的单文件ajax上载,并且可以在文件选择器输入字段的更改事件中触发。

实际上,您可以在支持html5的浏览器中单独使用js来完成。你也可以使用iframe垫片(谷歌用于AIM垫片)或使用harald的奇特上传程序(通过a.swf)也可以查看thierry bela的,它使用html5或垫片技巧作为后备(因此,渐进增强)
<form id="uploadphoto_pod" action="upload.php" enctype="multipart/form-data" method="post">
<input type='file' id='uploadphoto' name='uploadphoto'/>
<input type="submit" class="submit" name="add_product" value="Upload" />
  </form>
   <div id="response"><!-- Ajax Response --></div>
<script type="text/javascript">
 window.addEvent('domready', function(){
$('uploadphoto').addEvent('submit', function(e) {
    //Prevents the default submit event from loading a new page.
    e.stop();
    //("this" refers to the $('uploadphoto') element).
    this.set('send', {onComplete: function(response) {
        $('response').set('html', response);
    }});
    //Send the form.
    this.send();
});
});
   </script>