70

My ISPSMTPアカウントでは、送信メールのユーザー名とパスワードを送信する必要があります。

PHP実行時にこれを使用するにはどうすればよいですか?ファイルにはサーバーとphp.mail()?php.iniエントリのみが含まれています。(SMTP= )From: (sendmail_from= )

4

10 に答える 10

42

PHPmail()コマンドは認証をサポートしていません。オプション:

  1. PHPMailer -チュートリアル
  2. PEAR -チュートリアル
  3. カスタム関数 - ノート セクションでさまざまな解決策を参照してください: http://php.net/manual/en/ref.mail.php
于 2008-09-21T22:02:10.883 に答える
40

php.ini ファイルに次の詳細を適用します。その作品はうまくいきます。

SMTP = smtp.example.com
smtp_port = 25
username = info@example.com
password = yourmailpassord
sendmail_from = info@example.com

これらの詳細は、Outlook の設定と同じです。

于 2012-03-13T18:29:36.123 に答える
15

PHPmail-command で認証を行います!

以下は、WAMPSERVER(Windows、php 5.2.17)で私のために働いています

php.ini

[mail function]
; For Win32 only.
SMTP = mail.yourserver.com
smtp_port = 25
auth_username = smtp-username
auth_password = smtp-password
sendmail_from = you@yourserver.com
于 2011-08-04T12:27:46.183 に答える
6

PEARを必要としないPHPMailerツールが好きです。しかし、いずれにしても、誤解があります。SMTPユーザーとパスワードにPHPサーバー全体の設定は必要ありません。これは、アプリごと(またはページごと)の設定である必要があります。異なるPHPページで同じアカウントを使用する場合は、それをある種のsettings.phpファイルに追加します。

于 2008-09-21T21:25:24.530 に答える
5

これに一日中取り組んだ後、私はついに解決策を見つけました。これが、WAMPを使用してWindowsXPから送信する方法です。

  1. GoogleのSMTPサーバーを使用します。おそらくアカウントが必要です。
  2. FakeSendmailをダウンロードしてインストールします。ダウンロードして解凍し、WAMPフォルダに入れました。
  3. テストPHPファイルを作成します。下記参照。
<?php
    $message = "test message body";
    $result = mail('recipient@some-domain.com', 'message subject', $message);
    echo "result: $result";
?>
  1. php.iniファイルとsendmail.iniファイルを更新します(sendmail.iniはsendmailフォルダーにあります)。
  2. 作成したsendmailフォルダーのerror.logファイルが機能しない場合は、確認してください。

参照:

于 2012-03-10T00:42:15.770 に答える
2

これらの回答は時代遅れであり、価値が低下しています。ベストプラクティス..

composer require phpmailer/phpmailer

あなたのsendmail.phpファイルの次は、次のことを要求するだけです

# use namespace
use PHPMailer\PHPMailer\PHPMailer;

# require php mailer
require_once "../vendor/autoload.php";

//PHPMailer Object
$mail = new PHPMailer;

//From email address and name
$mail->From = "from@yourdomain.com";
$mail->FromName = "Full Name";

//To address and name
$mail->addAddress("recepient1@example.com", "Recepient Name");
$mail->addAddress("recepient1@example.com"); //Recipient name is optional

//Address to which recipient will reply
$mail->addReplyTo("reply@yourdomain.com", "Reply");

//CC and BCC
$mail->addCC("cc@example.com");
$mail->addBCC("bcc@example.com");

//Send HTML or Plain Text email
$mail->isHTML(true);

$mail->Subject = "Subject Text";
$mail->Body = "<i>Mail body in HTML</i>";
$mail->AltBody = "This is the plain text version of the email content";

if(!$mail->send()) 
{
    echo "Mailer Error: " . $mail->ErrorInfo;
} 
else 
{
    echo "Message has been sent successfully";
}

これは、好きなように構成できます..

于 2018-03-21T23:33:09.960 に答える
1

MailPEARパッケージのMail::factoryを使用します。例。

于 2008-09-21T21:14:51.247 に答える