私は簡単な連絡先フォームでPHPMailerを使用しています。私はjQuery AJAXを使用しています。コンタクトフォームはAJAXと一緒に期待どおりに動作し、今はすべてが機能しているのでこの問題に取り組んでいます。AJAXでPHPMailerが添付ファイルを送信しない
添付ファイルは、AJAX経由でフォームを送信する際にPHPMailerから送信された電子メールには含まれません。
jQuery AJAXでフォームを送信するときに添付ファイルを送信するにはどうすればよいですか?
私は簡単な連絡先フォームでPHPMailerを使用しています。私はjQuery AJAXを使用しています。コンタクトフォームはAJAXと一緒に期待どおりに動作し、今はすべてが機能しているのでこの問題に取り組んでいます。AJAXでPHPMailerが添付ファイルを送信しない
添付ファイルは、AJAX経由でフォームを送信する際にPHPMailerから送信された電子メールには含まれません。
jQuery AJAXでフォームを送信するときに添付ファイルを送信するにはどうすればよいですか?
メールのヘッダーを設定する必要があります。いくつかのヘッダーの例は次のとおりです。 -
$header = "From: ".$from_name." <".$from_mail.">\r\n";
$header .= "Reply-To: ".$replyto."\r\n";
$header .= "MIME-Version: 1.0\r\n";
$header .= "Content-Type: multipart/mixed; boundary=\"".$uid."\"\r\n\r\n";
$header .= "This is a multi-part message in MIME format.\r\n";
$header .= "--".$uid."\r\n";
$header .= "Content-type:text/plain; charset=iso-8859-1\r\n";
$header .= "Content-Transfer-Encoding: 7bit\r\n\r\n";
$header .= $message."\r\n\r\n";
$header .= "--".$uid."\r\n";
$header .= "Content-Type: application/octet-stream; name=\"".$filename."\"\r\n";
$header .= "Content-Transfer-Encoding: base64\r\n";
$header .= "Content-Disposition: attachment; filename=\"".$filename."\"\r\n\r\n";
$header .= $content."\r\n\r\n";
$header .= "--".$uid."--";
少なくともmime-version、content-type、content-transfer-encoding、content-dispositionはそこにあるはずです –
PHPMailerはすべてのことを処理します。 – Synchro
PHPMailerはAjaxとは関係ありません。単に間違ったアップロードを処理しているだけです。 PHPMailerで提供されている複数のファイルアップロードの例に基づいてコードを作成します。 – Synchro
PHPがform-4ファイルをform_4_fileに変更しているかもしれません。これは役に立つかもしれないhttp://stackoverflow.com/questions/1436166/php-replace-dashes-in-object-variables-with-underscores – Steve
これはどういう意味ですか?入力フィールドに ' - 'を付けることはできません。なぜ私の添付ファイルが送信されないのですか? – guub