HTML5拖放问题

时间:2011-09-25 20:23:50

标签: php html html5

我正在尝试实施HTML5拖放以上传文件。当文件被删除时,我想调用php文件来处理被删除的文件。如何调用php文件并访问php文件中的拖动文件。另外,我想从php文件发回成功或错误消息。

我无法弄清楚如何将文件发布到php并从那里获得响应。 到目前为止我的代码是:

function drop(evt) {
        evt.stopPropagation();
        evt.preventDefault();

        var files = evt.dataTransfer.files;
        handleFiles(files); 
    }

    function handleFiles(files) {

        var file = files[0];    
        var reader = new FileReader();

        reader.onload  = uploadFile;  //main function
        reader.onloadend = uploadComplete;
        reader.readAsDataURL(file);
    }

    function uploadFile(evt)
    {
        //call upload.php
        //get success msg or error msg
        //alert(success) or alert(error)
    }

以下是upload.php文件示例:

<?php
    $dropped_file  //how to get the file

    if (filesize($dropped_file) > 1024)
    {
        echo "size error"   //how to send this error
    }
    else
    {
        echo "success"      //how to send this success msg.
    }
?>

3 个答案:

答案 0 :(得分:2)

答案 1 :(得分:0)

你可以使用jQuery,在drop回调时执行AJAX调用。

$("body").droppable({
    accept: "img", //Your element type goes here e.g. img
    drop: function(event, ui){
       //Perform an AJAX call here. You can access the current dropped item through
       //ui.draggable 
    }
)}

答案 2 :(得分:-1)

使用jQuery UI将为您提供以最简单的方式拖放的功能