0

我已经看过其他一些关于此的帖子,我现在正在从一本书中学习。我遵循了书中所说的内容,但我不明白我错过了什么。

我尽量不让它成为一个双重帖子,但代码与我在 stackoverflow 上阅读的代码完全不同,所以我开始了。我希望有一个人可以帮助我。我是一个完整的初学者。

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 - gsmtp in C:\wamp\www\sam\sendmail.php 第 24 行了解更多信息

4

1 回答 1

1

您的代码看起来不错,但您可能无法通过的服务器使用核心功能PHP发送电子邮件。看看这篇文章,因为它可以帮助你。PHP'smailgmailSMTP

于 2013-03-28T21:15:51.690 回答