問い合わせフォームに添付ファイルをつけたい
問い合わせフォームで添付ファイルを送れるものを作成しております。
なんとか本文と題名が送れるようになったのですが
添付ファイルを添付して送っても本文と題名のみ
届くような状況です。
以下ソースになります。
■sample_attachmail.php
---------------------------------------------------------------------------
<?php
//ライブラリ読み込み
require('./jphpmailer.php');
//言語設定、内部エンコーディングを指定する
mb_language("japanese");
mb_internal_encoding("UTF-8"); //jphpmailer 内のコードもUTF-8に変えました。
//日本語HTMLメールを送る
$to = "XXXXXXX"; //宛先この部分をメールアドレスに変える
$subject = $_POST['subject']; //題名
$htmlbody = $_POST['message'];//本文
$from = $_POST['name']; //差出人
//$fromname = $_SESSION[name]; //差し出し人名
$attachfile = $_POST['upfile']; //添付ファイルパス
$mail = new JPHPMailer();
$mail->addTo($to);
$mail->setFrom($from,$fromname);
$mail->setSubject($subject);
$mail->setHtmlBody($htmlbody);
//添付ファイル追加
$mail->AddAttachment($attachfile);
//$mail->addAttachment($attachfile);
if (!$mail->send()){
echo("メールが送信できませんでした。エラー:".$mail->getErrorMessage());
} else {
echo("メールが送信されました。");
}
?>
---------------------------------------------------------------------------
■form.html
---------------------------------------------------------------------------
<form action="sample_attachmail.php" method="post">
お名前:<input type="text" name="name"><br />
件名:<input type="text" name="subject"><br />
本文:<br /><textarea name="message" rows="5" cols="30"></textarea><br />
画像添付:<input name="upfile" type="file" size="50"><br />
<input type="submit" value="送信">
</form>
---------------------------------------------------------------------------
以下のページを参考にさせていただきました。
http://techblog.ecstudio.jp/tech-tips/mail-japanese-advance.html
上記$mail->AddAttachment($attachfile);を
$mail->AddAttachment($attachfile,'img.jpg','base64','image/jpeg');などと
変更したり、class.phpmailer.phpで定義されている
public function AddAttachment($path, $name = '', $encoding = 'base64', $type = 'application/octet-stream') {
を
public function AddAttachment($path, $name = '', $encoding = 'base64', $type = 'image/jpeg') {
などと書き換えてみましたが結果は変わりませんでした。
ほかのphpファイルはそのまま使っております。
お分かりになられる方がいらっしゃいましたらご教示のほどお願いいたします。
補足
回答ありがとうございます。 一応拝見させていただいたのですが・・・・・・正直ちょっと難解でして・・・・・・ 以下のタグが現在のフォームのものなのですが、これで添付ファイルを送信するにはどうしたらいいんでしょう? <FORM METHOD="post" ACTION="/cgi-bin/formmail.pl"> <INPUT TYPE="hidden" NAME="recipient" VALUE="yyy@xxx.ne.jp"><CENTER> <TABLE align="center" border="0" cellspacing="0" cellpadding="1"> <TR> <TD align="right"> タイトル:</TD> <TD><INPUT type="text" name="subject" size="30" class="in" value="添付ファイル"></TD> </TR> <TR> <TD align="right">お名前:</TD> <TD><INPUT type="text" name="name" size="30" class="in"></TD> </TR> <TR> <TD align="right">E-mail:</TD> <TD><INPUT type="text" name="mail" size="30" class="in"></TD> </TR> <TR> <TD align="right">URL:</TD> <TD><INPUT size="50" type="text" maxlength="50" name="url" value="http://"></TD> </TR> <TR> <TD align="right">ファイル:</TD> <TD><INPUT size="50" type="file" maxlength="50" name="file"></TD> </TR> <TR> <TD></TD> <TD align="center"><INPUT type="reset" value="クリア" class="in"> <INPUT type="submit" value="送信"class="in"></TD> </TR> </TABLE> </CENTER> <INPUT type="hidden" name="act" value="check"> </FORM> </BODY> </HTML>