ほとんどの PHPMailer の質問は IsSMTP() を使用していますが、昨日 SO で見つけた非常に基本的な例から作業しています (ただし、履歴にはリンクが見つからないようです)。
require_once("class.phpmailer.php");
$email = new PHPMailer();
if (isset($_FILES['upload']['size']))
{
echo 'file size: '.(basename($_FILES['upload']['size'])* 1024).'<br />';
if (move_uploaded_file($_FILES['upload']['tmp_name'], $target_path))
{
echo "The file ". basename( $_FILES['upload']['name'])." has been uploaded<br />";
$email->AddAttachment($target_path);
}
else
{
echo "There was an error uploading the file, please try again!<br /> ".basename($_FILES['upload']['error']);
}
}
else
{
echo "No file was found for the upload.<br />";
}
$email->To = "me@this.com";
$email->From = $email_from;
$email->FromName = $first_name;
$email->Subject = "Query from website";
$email->Body = $email_message;
//echo "mail built...<br />";
if (!$email->Send())
{
echo "Mailer error: " . $email->ErrorInfo;
}
2回送信してみました。コードは正常に実行され、最後のif
ステートメントは true を返します。
IsSMTP() を使用する必要がありますか? もしそうなら、ここで提案されているように SSL 経由でルーティングする必要がありますか?
前もって感謝します?
編集
SMTP に必要な詳細を次のように追加しました。
$email->IsSMTP();
$email->Host = "localhost";
$email->Port = 465;
$email->SMTPAuth = true;
$email->Username = "bacon";
$email->Password = "4ndCh33se";
これは、送信のトリガーにはならなかったようです。また、まだエラーは報告されていません。
編集
エラーが発生したことが判明しました。奇妙な場所にリダイレクトがあり、それが表示されませんでした。エラーは次のとおりです。
サポートされていないメーラーを少なくとも 1 つ指定する必要があります。