PHP通过AJAX下载

时间:2016-02-02 15:48:14

标签: javascript php ajax download

我有一个允许用户下载文件的PHP脚本。如果我在表单上创建一个标准按钮,并且在回发后调用PHP脚本,它工作正常。但是,我试图让按钮调用一些Javascript然后使用AJAX来调用PHP脚本。我没有收到任何错误,但文件没有下载。

//JAVASCRIPT
<script type="text/javascript">
function downloadForm()
{
    var data = {ipAddress : "<?php echo $ipAddress; ?>", userID : "<?php echo $userID; ?>"};
    jQuery.ajax({
        url: "/download-form-internal.php",
        type:'POST',
        data: data,
        dataType: 'html',
        success: function(result){

        },          
    });
}
</script>   

//PHP CODE SNIPPET
header('Content-Description: File Transfer');
header('Content-Type: application/pdf');
header('Content-Disposition: attachment; filename='.$FILENAME);
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
ob_clean();
flush();
echo $fileToDownload;
exit();

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您可能需要success: function添加error: function才能查看错误。

以及发送标题之前发送回传的原因!标题需要先发送。