スレッド表示 | フラット表示〕 全トピック 923 件中 864 番目 次≫ ≪前

メールフォームの添付について

created: 2003-05-17 21:55 | modified: 2003-05-19 18:19 | reply: 7

[334] これは失礼しました(^^;

user: yagi | created: 2003-05-18 19:47
いや、失礼しました(^^;
書いたあとのことですが、そんながつっこみがくるであろうと確信してました(苦笑)

それは、さておき。
次のようにしましたところ、上記のようなことになってしまったという次第であります。
unadonさんの的確なつっこみを期待しております。
よろしくお願いいたします。

if ($_FILES[file][size]) { if (!is_uploaded_file($_FILES[file][tmp_name])) { error_page('UPLOAD ERROR!!', '添付ファイルが不正です'); } }

$fp = @fopen($_FILES[file][tmp_name], 'rb') or error_page('OPEN ERROR!!', "[ $_FILES[file][tmp_name] ]");
flock($fp, LOCK_EX); // ロック開始
$attach = fread($fp, filesize($_FILES[file][tmp_name]));
flock($fp, LOCK_UN); // ロック解除
fclose($fp);

$fname = $_FILES[file][name];
$subject = i18n_mime_header_encode($_GET[ttl]);

// 日本語ファイル名のMIMEエンコード
$fname = i18n_mime_header_encode($fname);

// 添付File内容のbase64エンコード + RFC2045方式にフォーマット
$attach = chunk_split(base64_encode($attach));

$addr = getenv('REMOTE_ADDR');
$host = gethostbyaddr($addr);

// メールボディのレイアウト
$msg =<<<MAIL
名 前:$_GET[name]
メール:$_GET[mail]
ホーム:$_GET[home]
ホスト:$host ($addr)
用 件:$_GET[bsns]

$_GET[cmt]
MAIL;

$boundary = 'boundary----------' . uniqid('b');

$head .= "MIME-Version: 1.0";
$head .= "Content-Type: Multipart/Mixed; boundary='$boundary'";
$head .= "Content-Transfer-Encoding: Base64";
$head .= "Subject: $subject";

$body .= "--$boundary\n";

$body .= "Content-Type: text/plain; charset='ISO-2022-JP'\n";
$body .= "\n";
$body .= "$msg\n";

$body .= "--$boundary\n";

$body .= "Content-Type: application/octet-stream; name='$fname'\n";
$body .= "Content-Transfer-Encoding: base64\n";
$body .= "Content-Disposition: attachment; filename='$fname'\n";
$body .= "\n";
$body .= "$attach\n";

$body .= "--$boundary--\n";

// メールを送信
@mail($CFG[to], $subject, $body, $head);
Parent: 333  reply: 335 返信 編集 削除
スレッド表示 | フラット表示〕 全トピック 923 件中 864 番目 次≫ ≪前
ページの一番上へ
Googleグックマークに登録 Yahooグックマークに登録 livedoorクリップに登録 @niftyクリップに登録 はてなブックマークに登録 deliciousに登録 Buzzurlに登録 FC2ブックマークに登録
最近更新された掲示板トピックス
管理人Blog
Yahoo Search

最近更新したNote
PHPマニュアル
今日のブックマーク
PHPマニュアル関数検索
関数名を入力し検索ボタンをクリック↑