页面在上传文件后正在重新获得

时间:2016-11-10 11:23:26

标签: javascript php jquery html5

我正在尝试使用ajax函数上传文件并且该文件正在上传,但问题是在我的页面进行刷新后几次,所以我的所有数据都已消失。 请帮我阻止页面加载。

我的HTML代码是:

<form>
    <input type="file" name="upl" id="upl" /><br />     
    <input type="submit" name="submit" id="submit" />
</form>
<p id="res"></p>

我的js文件代码是:

$("#upl").on('change',function(e){
        e.preventDefault();
        e.stopPropagation();
        var file_data = $(this).prop('files')[0]; 
        var form_data = new FormData();                  
        form_data.append('file', file_data);
        $.ajax({
        url: 'upload.php', // point to server-side PHP script 
        dataType: 'text',  // what to expect back from the PHP script, if anything
        cache: false,
        contentType: false,
        processData: false,
        data: form_data,                         
        type: 'post',
        success: function(php_script_response){
            $("#res").append(php_script_response); // display response from the PHP script, if any
            if(php_script_response){
            return false;
            }
        }
    });
});

我的php文件代码是:

<?php

if ( 0 < $_FILES['file']['error'] ) {
    echo 'Error: ' . $_FILES['file']['error'] . '<br>';
}
else {
   if( move_uploaded_file($_FILES['file']['tmp_name'], 'uploads/' . $_FILES['file']['name']) ){
   echo "uploaded";
   }
   else{
   echo "not uploaded";
   }
}

?>

请帮助解决这个问题。

1 个答案:

答案 0 :(得分:0)

因为您没有在表单中添加操作,而您想使用ajax,因此不需要表单。