人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPで質問です。

Android携帯では、音楽データのダウンロードを行うには
下記を使用するしかないのでしょうか?

http://ameblo.jp/exp-sei/entry-10766745504.html

下記のヘッダを送るだけではダメでした。
header("Content-disposition: attachment; filename=" . $_GET['address'] . '.mp3');
header("Content-type: application/octet-stream; name=" . $_GET['address'] . '.mp3');


●質問者: makocan
●カテゴリ:インターネット ウェブ制作
✍キーワード:Android application MP3 name PHP
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● ksoft_sort
●35ポイント

header("Content-disposition: attachment; filename=" . $_GET['address'] . '.mp3');

filenameは"でくくらないとうまくできないことがあるそうです。


header("Content-type: application/octet-stream; name=" . $_GET['address'] . '.mp3');

通常 name=-----.mp3 はつけません。

ということでちょっと書いてみました。

**************

header('Content-Disposition: attachment; filename="'.$_GET['address'].'"');

header('Content-Type: application/octet-stream');

header('Content-Transfer-Encoding: binary');

header('Content-Length: '.filesize($_GET['address']));

ファイル内容出力(ファイルだったらreadfile(ファイル名);とか。)

**************

いちおうファイル名は$_GET['address']にしましたが、これは非常に危険です。GETで取得したファイル名ですから、ちょっと変えられたら、プログラム本体などをダウンロードされてしまう危険があります。ですから、ファイルコードみたいなものを作って、それをGETで取得し、そのコードからファイル名を内部で作成して、ダウンロードさせたほうが安全です。

わかっているとは思いますが、ファイル名には/などは使えません。Android、Linux、Windows、みんなそうです。

◎質問者からの返答

同一ソースを使用したのですが、IS03にて、「この携帯ではこのコンテンツはサポートされていません。」と出てしまいます。

ちなみにただのJpgファイルです。


2 ● ksoft_sort
●35ポイント

二回目です。

パソコンではダウンロードできますか?もしかしたら拡張子などで判断しているかもしれません。JPEGならjpgにしていますか?

ちょっと手元にIS03はないので、確認できないです。


#なんかあなたの言っていることが矛盾してますが。。。

Android携帯では、音楽データのダウンロードを行うには

ちなみにただのJpgファイルです。

◎質問者からの返答

申し訳ありません。jpgではなく、mp3でした。

パソコンではDL可能です。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ