0

これに関する他の投稿を見たことがありますが、今は本から学んでいます。私は本に書かれていることに従いましたが、何が欠けているのか理解できません。

二重投稿にならないように気をつけましたが、コードがスタックオーバーフローで読んだものとかなり違うので、ここに行きます。誰かが私を助けてくれることを願っています。私は完全な初心者です。

Basic.phpはこのスクリプトを持っています

<form action="sendmail.php" method="POST">
<p><strong>Name:</strong><br />
<input type="text" size="25" name="name" /></p>
<p><strong>E-Mail Address:</strong><br />
<input type="text" size="25" name="email" /></p>
<p><strong>Message:</strong><br />
<textarea name="message" cols="30" rows="5"></textarea></p>
<p><input type="submit" value="send" /></p>
</form>

sendmail.phpはこのスクリプトを持っています。

echo "<p>Thank you, <b>" . $_POST['name'] . "</b>, for your message!</p>";
echo "<p>Your e-mail address is: <b>" . $_POST['email'] . "</b>. </p>";
echo "<p>Your message was: <br/>";
echo $_POST['message']."</p>";
//start building the mail string
$msg = "Name: " . $_POST['name'] . "\n";
$msg .= "E-mail: " . $_POST['email'] . "\n";
$msg .= "Message: " . $_POST['message'] . "\n";
//set up the mail
$recipient = "myemail@gmail.com";
$subject = "Form Submission Results";
$mailheaders = "From: me \n";
$mailheaders .= "Reply To " . $_POST['email'];
//send the mail
mail($recipient, $subject, $msg, $mailheaders);

そして、php.iniこれが私が変更したものです(この部分についてはわかりません)。

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = smtp.gmail.com
; http://php.net/smtp-port
smtp_port = 465
; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = myemail@gmail.com

私が得ることができる助けをいただければ幸いです。ありがとうございました!

ところで、次のエラーが表示されます: 警告: メール(): SMTP サーバーの応答: 530-5.5.1 認証が必要です。詳細については、530 5.5.1 http://support.google.com/mail/bin/answer.py?answer=14257 wx2sm302658igb.4 - C:\wamp\www\sam\sendmail.php の 24 行目の gsmtp をご覧ください。

4

1 に答える 1

1

コードは問題ないように見えますが、のサーバー経由でコア関数PHPを使用して電子メールを送信できない可能性があります。この投稿が参考になるかもしれませんので、ご覧ください。PHP'smailgmailSMTP

于 2013-03-28T21:15:51.690 に答える