PHPMailerで問題が発生しています。私のスクリプトは以下の通りですが、SQLクエリが機能しているので省略しています。唯一の問題はメールの部分です。主なアイデアは、クエリが実行され、次にそのデータからCSVを作成するブロックがあることです。スクリプトが実行されるたびに、添付ファイルとしてcsvを送信したいと思います。PHPMailerエラー、関数のインスタンス化
私はPowerShellで次のスクリプトを実行すると、私はエラー
mail error: Could not instantiate mail function
を取得し、私はすべてを含めたのだが、クラスが罰金見つけましたが、何らかの理由で私はこれを取得しておきます。私はPHPMailerの新機能ですので、私が欠けている明らかな部分があることを願っています。私はこれをローカルで実行しています。ここで
はスクリプトです:
<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require '/common/site_globals.php';
require 'phpmailer/vendor/autoload.php';
print_r(get_included_files());
if (!$result) die('Couldn\'t fetch records');
$num_fields = mysqli_num_fields($result);
$headers = array();
while ($fieldinfo = mysqli_fetch_field($result)) {
$headers[] = $fieldinfo->name;
}
$fp = fopen('dailyReportTestPHP.csv', 'w');
if ($fp && $result) {
fputcsv($fp, $headers);
while ($row = $result->fetch_array(MYSQLI_NUM)) {
fputcsv($fp, array_values($row));
}
fclose($fp);
}
$mail = new PHPMailer(true);
try{
$mail->setFrom("[email protected]");
$mail->addAddress("[email protected]");
//$mail->addAttachment($fp);
$mail->isHTML(true);
$mail->Subject = "Test";
$mail->Body = "Test";
$mail->Send();
echo 'message sent';
} catch (Exception $e){
echo 'message failed';
echo 'mail error:' . $mail->ErrorInfo;
}
?>
ありがとう、私は私たちのprodサーバーでそれを試して、それは完璧に働いた。私はローカルでテストするためにGoogleのSMTP設定を使用しました。とても有難い! –