此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
楼主【sdomain】截止到2008-06-27 14:49:10的历史汇总数据(不包括此帖):
发帖数:1                  发帖分:50                 
结贴数:1                  结贴分:50                 
未结数:0                  未结分:0                  
结贴率:100.00%            结分率:100.00%            
敬礼!

解决方案 »

  1.   

    正常输出没问题的,问题是我上面描述的,有不请楚的可以提问,我怀疑是HTTP的header没处理好的原因,因为我直接播放MP3文件没有问题的,
      

  2.   

    1.这时不关掉当前的IE页面,在当前IE页面内打开任何本站点的页面,或是点击本站点内的任何连接,都会出现打不开的情况
    session独占的原因,打开session后,这个输出mp3数据的页面,不输出结束,session将被独占,其他使用session的页面将等待。这时打开一个新窗口,将可以访问别的2。第二个问题,我在PHP输入页面时对COOKIE里的东西进行判断……
    (1)使用cookie恐怕不行,现在下载软件大部分可以调用cookie,这样下载软件直接下载这个,数据输出的页面,将会被下载
    (2)把cookie清除可以解决上一个问题,但是同时有个问题:数据输出的页面,不一定1次连接就输出完毕,可能出现,连接中断了,会重复连接,这样第2次连接就通不过验证。播放器还有个问题,大部分都要进行2次以上连接,你可以用getallheaders()查看一下播放器连接时的发送的header头
      

  3.   

    谢谢 testoktest 你说的没错,一清除时,直接下载可以下载,但是如果用播放器播放时就会出错,看播放器的样子好像能读到文件,但播放不了,我怀疑就是我把COOKIE清除了的原因其实我的目的没有别的,也并不是防下载,我只是不想用户用下载工具下载,还有就是不想被机器人搜到,比如像百度音乐呀,一但被他个搜到地址,那样服务器的流量将会大增,主要是这个问题,其实单用户的收听和下载我倒无所谓,不知道有没有好的思路
    期待中,感谢所有帮助我的朋友.
      

  4.   

    不过,你要考虑到页面打开,HTML已经生成后,而恰好你的随机码又在之后又重新生成的情况
      

  5.   


    $a = 4 ;
    echo $a;对不起 我看下这个功能
      

  6.   

    header('Content-Type: application/octet-stream');
    $filesize =strlen($content);
    header('Last-Modified: '.gmdate('D, d M Y H:i:s') . ' GMT');
    header('Cache-Control: no-store, no-cache, must-revalidate');
    header('Cache-Control: pre-check=0, post-check=0, max-age=0');
    header('Content-Transfer-Encoding: binary');
    header('Content-Encoding: none');
    header('Content-type: application/force-download');
    header('Content-length: '.$filesize);
    header('Content-Disposition: attachment; filename="xxxx.xml"');