不需要邮件服务器,不使用mail内置函数,一个类就搞定,利用phpmailer类我写了一个自定义函数 sendmail() ,very实用!
以前也在几个php论坛上发表过这个发邮件的函数,今天再发,因为today要附上使用例子,如果你还不会用,那就要补补php基础课了。
1.下载相关文件sendmail.rar,包含 index.php文件、phpmailer类库文件夹 下载
2.然后解压 sendmail.rar 到服务器的任何目录下
3.打开 index.php ,如下(修改浅黄色标记部分,表单部分随便。)
<?php
include_once "phpmailer/class.phpmailer.php";
function sendmail($to,$subject,$content) {
$mail = new phpmailer();
// 以下设置 - 不要更改!
$mail->issmtp();
$mail->smtpauth = true;
$mail->ishtml(true);
$mail->charset ="gb2312";
$mail->encoding = "base64";
// 以下设置 - 不要更改!
$mail->addaddress($to, "");
$mail->subject = $subject;
$mail->body = $content;
// 以下 5 个变量值必须据实修改
$host = '61.183.41.172';
$username = '[email protected]';
$password = '******';
$from = '[email protected]';
$fromname = '天马博客';
//$mail->addreplyto("", "");
//$mail->addattachment("ok.jpg"); //附件
// 以下设置 - 不要更改!
$mail->host = $host;
$mail->username = $username;
$mail->password = $password;
$mail->from = $from;
$mail->fromname = $fromname;
// 发送并返回相应信息
if(!$mail->send()){ return 0; exit(); }
return 1;
}
?>
<form action="" method="post" name="f_sendmail" id="f_sendmail">
<input name="t_from" type="text" disabled="disabled" id="t_from" value="[email protected]" />
发件人
<p>
<input name="t_to" type="text" id="t_to" />
收件人<p><input name="b_sendmail" type="submit" id="b_sendmail" value=" 发 送 " />
</form>
/**先设置 $to $subject $content 这三个变量的值
再调用 sendmail 函数来发送邮件
**/
if($_post[b_sendmail]){
$to = htmlspecialchars(addslashes($_post[t_to]));
$subject = '天马博客:一封测试邮件↖(^ω^)↗';
$content = '恭喜你,你已看到了php发送邮件的效果。 -- <a href="http://www.php95.com" target="_blank">天马博客</a>';
if(sendmail($to,$subject,$content)) {
echo "发送到 $to 的邮件已成功!";
}else{
echo '发送失败!';
}
4.最后一步,运行index.php
你的邮件是否发送成功?
天马测试本代码,is ok,见证:
http://www.examw.com/biancheng/php/140429/