[PHP-users 24284] Re: 携帯用3G2ファイルダウンロードについて

Seiji Masugata s.masugata @ digicom.dnp.co.jp
2005年 1月 27日 (木) 19:00:18 JST


桝形です。

> > --ダウンロードページ----------------------
> > <object data='download.php?cid=1' type='video/3gpp2' copyright='no' standby='ダウンロード'>
> > <param name='disposition' value='devmpzz' valuetype='data' />
> > <param name='title' value='SAMPLE' valuetype='data' />
> > <param name='size' value='10000' valuetype='data' />
> > </object>";
> > 
> > --ダウンロード用--------------------------
> 
> 確かHTTP1.1で、おしゃべりしないと駄目だったような。。。

事前に、

$Range = getenv( "HTTP_RANGE" );
list( $Range1, $Range2 ) = explode( "-", substr( $Range, 6 ) );
$OffSet = $Range1;
$Count  = $Range2 - $Range1 + 1;

をやっていたようです(結構、重要な部分)。

# 昔のソースは恥ずかしい。。。

> header( "HTTP/1.1 206 Partial content" );
> header( "Last-Modified: ".date("D, j M Y G:i:s \\G\\M\\T") );
> header( "Pragma: no-cache" );
> header( "Accept-Ranges: bytes" );
> header( "Content-Length: ". $Count );
> header( "Content-Range: bytes ".$Range1."-".$Range2."/".$File_Size );
> header( "Content-Type: ".$Type );
> header( "\n" );
> 
> //後はEzGetと似たような感じで処理(分割もありえる)
> 
> 
> 
> 既に記憶の彼方なので、トンチンカンな事を言っていましたら
> すみません。。。
> 
> でも、EZWEBでオブジェクト・タグを使ってDLさせるプログラム
> 作った時、こんな事をやっていたようです。


// ファイルサイズとRANGE-LASTが同じになったら終了
if( ( $Range2 + 1 ) >= $File_Size )

みたいなコメントも発見。

--
Seiji Masugata<s.masugata @ digicom.dnp.co.jp>




PHP-users メーリングリストの案内