首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何制作下载页面

如何制作下载页面
EN

Stack Overflow用户
提问于 2011-04-25 11:15:51
回答 4查看 6.4K关注 0票数 2

我对如何做类似于premiumpixels.com的下载页面感到兴奋

示例- http://www.premiumpixels.com/freebies/custom-audio-player-skin-psd/

如果我们点击“下载”:

1)像premiumpixels.com/download/?file=audio-player一样将页面重新加载到url

2)超时后开始下载。

3)从cdn.premiumpixels.com/uploads/audio-player.zip下载文件

我怎么做同样的?如何在php?上完成?

另外,我希望在打开下载页面时发送一些mysql请求,以更新文件下载状态。

谢谢。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-04-25 11:22:06

使用Javascript的setTimeout函数,然后将浏览器重定向到下载资源。

看起来这是站点使用的源:

代码语言:javascript
复制
jQuery(function () {

    // get the GET variables
    var theme = getUrlVars();

    var downloadLink = 'http://cdn.premiumpixels.com/uploads/' + theme['file'] + '.zip';

    if(theme['file'])
    {
         jQuery('#downloadLink').attr('href', downloadLink);

         delayedDownload();
    }

    function delayedDownload()
    {
         timeoutID = window.setTimeout(downloadTheme, 1000);
    }

    function downloadTheme()
    {
        window.location.replace(downloadLink);
        //window.open(downloadLink,'','menubar=1,location=1,toolbar=1,width=600,height=500');
    }

    // Read a page's GET URL variables and return them as an associative array.
    function getUrlVars()
    {
        var vars = [], hash;
        var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');

        for(var i = 0; i < hashes.length; i++)
        {
            hash = hashes[i].split('=');
            vars.push(hash[0]);
            vars[hash[0]] = hash[1];
        }

        return vars;
    }

});
票数 2
EN

Stack Overflow用户

发布于 2011-04-25 11:22:13

1.)用户点击链接-例如download.php?id=my-app-id

2.)在download.php中,您可以执行您喜欢的mysql更新内容。

3.)然后重定向到实际下载文件:header("Location: /folder/for/downloadcontent/download.zip");

对于SEO友好的urls,请在RewriteRule文件中使用.htaccess

票数 2
EN

Stack Overflow用户

发布于 2011-08-01 19:35:22

或者,您可以使用MIME/Multipart类型的响应,其中在第一部分发送HTML页面,在另一部分发送文件,然后根本不需要使用javascript :)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5777784

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档