PHP スクリプトからメールを送信する際に問題が発生しました。いくつかのデータ:
- 共有ホスティング、SSH アクセスなし、ホスティング プロバイダー パネルのみ
- PHP バージョン 5.2.5
- 昨年、同じホスティングで問題なくメールを送信できるサイトを構築しました
- 次のコードでは、匿名性のために、ドメインが「domain.com」で、私のプライベート アドレスが「myaddress@mydomain.com」であるとします。
コードは次のとおりです。
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);
$to = "myaddress@mydomain.com";
$subject = "Hi";
$body = "Test 1\nTest 2\nTest 3";
$headers = 'From: info@domain.com' . "\r\n" .
'errors-to: myaddress@mydomain.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
if (mail($to, $subject, $body, $headers)) {
echo("Message successfully sent");
} else {
echo("Message sending failed");
}
require('class.phpmailer.php');
$message = "Hello world";
$mail = new PHPMailer();
$mail->CharSet = "UTF-8";
$mail->AddAddress("myaddress@mydomain.com", "Agos");
$mail->SetFrom("info@domain.com","My Site");
$mail->Subject = "Test Message";
$mail->Body = $message;
$mail->Send();
?>
そして、ここに私が得るものがあります:
メッセージの送信に失敗しました メール機能をインスタンス化できませんでした。
控えめに言っても、これは困惑しています。少なくともいくつかのより意味のあるエラーを取得するためにできることはありますか? クラスのコードがファイルに表示されるのはなぜですか?