强行下载后执行javascript?

时间:2014-01-20 07:17:21

标签: javascript php html download

尝试使用纯php制作下载页面。 对于那些启用了javascript的用户,我计划通过一些反馈来扩展下载页面。

做了一些原型设计...... 当用户按下下载按钮(发布)时,下载开始。 没有页面更改,java脚本仍可在下载页面上执行。

这是否可以依赖,强制下载后javascript仍会执行?

简单的例子,test.php:

<?php
if (!isset($_POST["submit"])) {
    $content = '
    <script type="text/javascript">
        var count = 0;
        function tick(){
            count++;
            console.log("tick() " + count);
            setTimeout("tick()", 1000);
        }
        tick();
    </script>
    <form method="post" action="">
        Download file</br>
        <input type="submit" name="submit" value="Submit" />
    </form>
    ';
    echo $content;
} else {
    $file = 'contentFile.zip';
    if (file_exists($file)) {
        header('Content-Description: File Transfer');
        header('Content-Type: application/zip');
        header('Content-Disposition: attachment; filename='.basename($file));
        header('Expires: 0');
        header('Cache-Control: must-revalidate');
        header('Pragma: public');
        header('Content-Length: ' . filesize($file));
        ob_clean();
        flush();
        readfile($file);
        exit;
    }
}
?>

0 个答案:

没有答案