備忘録(PHP): 2008年5月アーカイブ

PHPを使ってユーザにファイルをダウンロードしてもらいたい場合は、header関数を使ってContent-Disposition:ヘッダを送信すれば簡単に構築できます。
今回はその方法を簡単に紹介しましょう。

まずは基本的なContent-Disposition構文は次のとおりです。
Content-Disposition: attachment; filename="<ファイル名>"
Content-Type:<ファイル形式>

Content-Disipositionフィールドを「attachment」とすることで、ユーザに表示するか保存するかを選択させることができます。よくある開くか保存するかのダイアログボックスが表示されます。

Content-typeを設定すればファイル形式を指定できます。

ファイル形式 対応するContent-Type
HTML text/html
テキスト text/plan
CSS text/css
JPEG画像 image/jpeg
GIF画像 image/gif
PNG画像 image/x-png
PDF application/pdf
tar形式圧縮ファイル application/x-tar
zip形式圧縮ファイル application/zip
CSVファイル application/x-csv
Excelファイル application/vnd.ms-excel
その他のファイル application/octet-stream

次は、簡単なプログラムを書いてみます。

とあるシステムで自動的にHTMLファイルを添付してメールを送信するシステムにしているのですが、メール本文中のhttp://で始まるURLやメールがリンクされていないとの指摘があっていろいろとヘッダを調べてみました。

しかし、どんなにヘッダを設定してもNG。
最悪は添付のHTMLファイルのソースがメール本文に表示されたり。

もともとのメール本文中のURLも重要度としては低いんですが。

とりあえず、OutlookExpressで単純に同じ文章をコピペして、HTMLファイルを添付して送ってみた。
すると、やはり結果はリンクが表示されていない。
HTMLファイルを添付しないと、正常にリンクされる。
と、言うことはHTMLファイルを添付するとダメなのだろうか???

もう少し調べてみます。

未解決ですいませんm(__)m 解決したら、また書きます・・orz   
カスタム検索

ioPLAZA【アイ・オー・データ直販サイト】 ioPLAZA【アイ・オー・データ直販サイト】
あれもこれも標準装備のレンタルサーバ あれもこれも標準装備のレンタルサーバ


Web広告限定ストア(eクーポン)Web広告限定ストア(eクーポン)

問い合わせ

メールフォーム