带有ajax问题的PHP文件下载

i am this problem of not being able to download image from server to my PC(No saving prompt ) , no error message have been shown

The output i am receiving is some unreadable code from the google chrome inspect element

Thanks in advance

Javascript

function Download(id) {

            console.log(id);

             $.ajax({
              type: 'post',
              url: 'DownloadRequest.php',
              data: {filename: id.trim()},
            });


 }

DownloadRequest.php File

<?php

    $file = $_POST['filename'];

    header ("Content-Type: application/download");
    header ("Content-Disposition: attachment; filename=$file");
    header("Content-Length: " . filesize("$file"));
    $fp = fopen("$file", "r");
    fpassthru($fp);
?>

Solution

function Download(id) {
    window.location="DownloadRequest.php?url="+id.trim();
 }

<?php

$file = $_GET['url'];;

header ("Content-Type: application/download");
header ("Content-Disposition: attachment; filename=$file");
header("Content-Length: " . filesize("$file"));
$fp = fopen("$file", "r");
fpassthru($fp);

?>

you can try like this, instead of using ajax,

window.location="DownloadRequest.php?filename";

Final code,

function Download(id) {
   console.log(id);
   window.location="DownloadRequest.php?filename";
}