php注册后发送验证邮件

时间:2014-01-21 19:15:45

标签: php email ubuntu xampp

我是PHP,PHPMyAdmin,Localhost等的新手。我正在建立一个我在localhost上测试的网站(我在我的Ubuntu上安装了Xampp)。我想制作一个注册表格,工作正常(一切都进入我的数据库),但我想看看哪些用户实际上已经激活了他们的帐户。

所以我想制作一个包含唯一代码的验证邮件。现在的问题是我尝试输入:mail($to, $subject, $message, $headers),但我发现它不起作用。

我尝试安装sendmail,postfix,dovecot,telnet等,但似乎什么都没有用,我找不到一个好的演练。

我使用以下内容:ubuntu(12.04LTS),xampp(php5.5),localhost / phpmyadmin。

如果有人知道一个很好的演练,或者知道如何完成这项工作,我会非常感激!

2 个答案:

答案 0 :(得分:0)

这是一个可能有用的简短教程。

http://sourcelibrary.org/2011/08/29/how-to-set-up-the-php-mail-function-on-a-ubuntu-linux-lamp-server/

您是否使用此行更新了php.ini文件?

sendmail_path = "/usr/sbin/sendmail -t -i"

然后重新启动apache。

答案 1 :(得分:0)

您可以尝试使用PHPMailer。它是用PHP发送电子邮件的强大库。

https://github.com/Synchro/PHPMailer

在这里,我将为您举一个例子。

首先,为您的计算机下载 PHPMailer。
其次,从安装时的位置开始需要PHPMailerAutoload.php。在我的例子中,它位于phpmailer目录中。这个(phpmailer)与我的应用程序位于同一目录中,所以:

<?php
require 'phpmailer/PHPMailerAutoload.php';

//Create a new PHPMailer instance
$mail = new PHPMailer();
//Set who the message is to be sent from
$mail->setFrom('from@example.com', 'First Last');
//Set an alternative reply-to address
$mail->addReplyTo('replyto@example.com', 'First Last');
//Set who the message is to be sent to
$mail->addAddress('whoto@example.com', 'John Doe');
//Set the subject line
$mail->Subject = 'PHPMailer mail() test';
//Read an HTML message body from an external file, convert referenced images to embedded,
//convert HTML into a basic plain-text alternative body
$mail->msgHTML(file_get_contents('contents.html'), dirname(__FILE__));
//Replace the plain text body with one created manually
$mail->AltBody = 'This is a plain-text message body';
//Attach an image file
$mail->addAttachment('images/phpmailer_mini.gif');

//send the message, check for errors
if (!$mail->send()) {
    echo "Mailer Error: " . $mail->ErrorInfo;
} else {
    echo "Message sent!";
}
?>

我从PHPMailer Github的https://github.com/PHPMailer/PHPMailer/blob/master/examples/mail.phps

中获取了这个例子

您还可以使用您的GMail帐户(如果有的话)发送电子邮件 https://github.com/PHPMailer/PHPMailer/blob/master/examples/gmail.phps

还有其他例子。

告诉我们您是如何解决它的。 祝你好运。