Php下载在同一页面上,无需重定向

时间:2014-06-07 10:28:11

标签: php download url-redirection

我有一个问题

如何确保android apk文件下载触发器时,index.php页面将保持不被重定向为空白。

index.php page

<head>
    //the javascript loading progress bar to fake simulation how much kb left.
        <script>
            $(document).ready(function() {
                $('body').on('click', '.btn', function(event) {

                    $('#init').hide();
                    $('#progress').show();
                    progress_bar(3210, 'KB');
                });

        });
    </script>
</head>

<body>
<a href="download.php?appid=100&sid=12345" class="btn">Download & Install</a>
</body>



download.php

$appid= $_REQUEST['appid'];
$sid= $_REQUEST['sid'];

if($appid==100)//offer download url
{
    $url= "http://yeahmobi.go2cloud.org/aff_c?offer_id=20374&aff_id=18009&aff_sub=".$sid;

    header("Location: ". $url);
    exit(); 
}

if($appid==111)//offer download url
{
    $url= "url-to-download-that-go-through-double-meta-refresh";

    header("Location: ". $url);
    exit(); 
}

点击下载链接时,chrome会在同一页面自动下载,但是firefox会重定向到空白页面,然后出现一个对话框弹出,询问是否下载。

我希望使index.php保持不变,以便动画模拟下载可以清楚地显示给用户,同时触发下载。

任何想法的人?

2 个答案:

答案 0 :(得分:0)

使用AJAX请求调用download.php文件。只需使用JQuery捕获事件并进行调用:

$(document).on("click", ".btn", function(e){
     e.preventDefault();
     //AJAX request
});

答案 1 :(得分:0)

您可以尝试使用此代码。  onclick =“window.open('filepath_in_server','_ blank','fullscreen = yes');返回false;”你的a href标签中的target =“_ blank”href =“#”。