繁体   English   中英

PHP-使用Ajax上传文件

[英]Php - upload file with ajax

我的2form.php:

<script type="text/javascript" src="mootools.js"></script>
<script type="text/javascript">
    function test()
    {
        url = '2form.php';
        var ajax = new Ajax(url, {
            method: 'post',
            onComplete: function(response) {            
                document.getElementById('error_upload_logo').innerHTML = response;
            }
        });     
        ajax.request();
    }   
</script>
<?php
    if($_FILES)
    {
        echo "<div>";
        foreach($_FILES['name'] as $v)
        {
            echo $v."<br/>";
        }
        echo "</div>";
    }
    else
    { ?>
        <form action='' id='form1' name="form1" method="post" enctype="multipart/form-data">
            <input type="file" name="name"/>
            <input type="submit" name="submit" onclick='test(); return false;'/>
        </form>
<?php
    }
?>

<div id="error_upload_logo"></div>

如果运行没有javascript的代码,则2form.php就像简单的php页面一样,并且

我们可以看到打印到屏幕上的$ _FILES信息

但是,如果我通过test()函数使用javascript运行,

我没有在$ _FILES中获取信息?

如何获得$ _FILES? 当单击按钮使用javascript运行时?

我想用ajax上传

您无法使用AJAX上传文件,因为您无权访问本地文件。

最常见的解决方法是JQuery Form插件执行的操作,创建一个临时iframe并进行常规表单提交。

另一种选择是使用基于Flash的上传器,例如SWFUploadUploadify

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM