• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PHP上でのメールフォーム送信設定)

PHP上でのメールフォーム送信設定について

このQ&Aのポイント
  • メールフォーム送信設定に関するエラーについて質問です。
  • Yahooメールを使っての送信を試みていますが、エラーメッセージが表示されます。
  • PHP.iniファイルの設定やOutlookの設定について、詳しい解決方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • php504
  • ベストアンサー率42% (926/2160)
回答No.3

最後のところ間違えました $error = $smtp->send($recipient, $headers, $message); if (PEAR::isError($error)) die($error->getMessage()); exit("メッセージを送信しました"); ?>

ken6791
質問者

お礼

pha504さん お返事遅くなってすいませんでした。 なんとかできました。 ありがとうございました。

その他の回答 (2)

  • php504
  • ベストアンサー率42% (926/2160)
回答No.2

認証するならPEARのMailかNet/SMTPを使うのがはやそうです 試しに作ってみましたが自分の環境では送信できました <?php $params["host"] = "smtp.mail.yahoo.co.jp"; $params["auth"] = true; $params["username"] = "username"; $params["password"] = "password"; $sender = "from@example.com"; $recipient = "to@example.org"; $subject = "テストテスト"; $subject = mb_convert_encoding($subject, "jis", "sjis"); $subject = mb_encode_mimeheader($subject, "jis"); $message = "test メッセージ"; $message = mb_convert_encoding($message, "jis", "sjis"); require_once 'Mail.php'; $smtp = Mail::factory("smtp", $params); if (PEAR::isError($smtp)) die($smtp->getMessage()); $headers['From'] = $sender; $headers['Subject'] = $subject; $headers['MIME-Version'] = "1.0"; $headers['Content-Type'] = 'text/plain; charset="iso-2022-jp"'; $headers['Content-Transfer-Encoding'] = "8bit"; $headers['X-Mailer'] = "PHP PEAR/Mail(smtp)"; $smtp->send($recipient, $headers, $message); if (PEAR::isError($smtp)) die($smtp->getMessage()); exit("メッセージを送信しました"); ?>

  • php504
  • ベストアンサー率42% (926/2160)
回答No.1

自宅のパソコンにインストールされているのですね Outlookで受診作業を行った後すぐにメールフォームを実行したらどうなりますか これでメールが送信できるようならスクリプトに認証部分を追加する必要があります。

参考URL:
http://help.yahoo.co.jp/help/jp/mail/whatisymail/whatisymail-50.html
ken6791
質問者

補足

早速の回答ありがとうございます。 Microsoft Outlook2002を使用していますが、参考URLにあったように送受信ボタンを2度押し、即送信してみました(POP before SMTPを参照しました)。 が、同様のエラーが出てきました。 どうしようもできず、途方にくれています。 どうしたらいいでしょうか。

関連するQ&A