当前位置:首页 > 服务器 > 正文

php空间服务器发送邮件(php发送邮箱)

本篇文章给大家谈谈php空间服务器发送邮件,以及php发送邮箱对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

php如何实现用购买的网站空间的邮箱发验证邮件给用户?

你可以使用PHPMailer邮件插件,这个插件使用简单,但是需要你先开启sockets,在php.ini里面设置。验证的内容你可以在你发送的邮件中的url后面加上一个随机码。当用户点击你的url触发了你的方法,你获取该随机码并和你发过去的随机码检验是否一致就可以了。有问题可以联系我。

如何正确运用PHP发送邮件函数

PHP发送邮件函数的应用代码示例:

#echo send_mail($_POST["email"],$tosubject,$_POST["errortext"]);  

echo send_mail('someone@126.com','only a test mail for test php mail function','一封垃圾邮件');  

echo time();  

 

function send_mail($to, $subject = 'No subject', $body) {  

$loc_host = "mail.server"; //发信计算机名,可随意  

$smtp_acc = "smp@163.com"; //Smtp认证的用户名  

$smtp_pass="pwdpwd"; //Smtp认证的密码,一般等同pop3密码  

$smtp_host="smtp.163.com"; //SMTP服务器地址,类似 smtp.tom.com  

$from="smp@163.com"; //发信人Email地址,你的发信信箱地址  

$deliver=$smtp_acc; //回复到指定邮箱  

$headers = "Content-Type: text/plain; charset="gb2312"rnContent-Transfer-Encoding: base64";  

$lb="rn"; //linebreak   

$hdr = explode($lb,$headers); //解析后的hdr  

if($body) {$bdy = preg_replace("/^./","..",explode($lb,$body));}//解析后的Body  

 

$smtp = array(  

//1、EHLO,期待返回220或者250  

array("EHLO ".$loc_host.$lb,"220,250","HELO error: "),  

//2、发送Auth Login,期待返回334  

array("AUTH LOGIN".$lb,"334","AUTH error:"),  

//3、发送经过Base64编码的用户名,期待返回334  

array(base64_encode($smtp_acc).$lb,"334","AUTHENTIFICATION error : "),  

//4、发送经过Base64编码的密码,期待返回235  

array(base64_encode($smtp_pass).$lb,"235","AUTHENTIFICATION error : "));  

//5、发送Mail From,期待返回250  

$smtp[] = array("MAIL FROM: ".$from."".$lb,"250","MAIL FROM error: ");  

//6、发送Rcpt To。期待返回250  

$smtp[] = array("RCPT TO: ".$to."".$lb,"250","RCPT TO error: ");  

//7、发送DATA,期待返回354  

$smtp[] = array("DATA".$lb,"354","DATA error: ");  

//8.0、发送From  

$smtp[] = array("From: ".$deliver.$lb,"","");  

//8.2、发送To  

$smtp[] = array("To: ".$to.$lb,"","");  

//8.1、发送标题  

$smtp[] = array("Subject: ".$subject.$lb,"","");  

//8.3、发送其他Header内容  

foreach($hdr as $h) {$smtp[] = array($h.$lb,"","");}  

//8.4、发送一个空行,结束Header发送  

$smtp[] = array($lb,"","");  

//8.5、发送信件主体  

if($bdy) {foreach($bdy as $b) {$smtp[] = array(base64_encode($b.$lb).$lb,"","");}}  

//9、发送“.”表示信件结束,期待返回250  

$smtp[] = array(".".$lb,"250","DATA(end)error: ");  

//10、发送Quit,退出,期待返回221  

$smtp[] = array("QUIT".$lb,"221","QUIT error: ");  

 

//打开smtp服务器端口  

$fp = @fsockopen($smtp_host, 25);  

if (!$fp) echo "bError:/b Cannot conect to ".$smtp_host."br";  

while($result = @fgets($fp, 1024)){if(substr($result,3,1) == " ") { break; }}  

 

$result_str="";  

//发送smtp数组中的命令/数据  

foreach($smtp as $req){  

//发送信息  

@fputs($fp, $req[0]);  

//如果需要接收服务器返回信息,则  

if($req[1]){  

//接收信息  

while($result = @fgets($fp, 1024)){  

if(substr($result,3,1) == " ") { break; }  

};  

if (!strstr($req[1],substr($result,0,3))){  

$result_str.=$req[2].$result."br";  

}  

}  

}  

//关闭连接  

@fclose($fp);  

return $result_str;  

}  

希望上面这段代码示例能让大家充分掌握PHP发送邮件函数的运用。

怎么利用php发送邮件求详细教程

PHP虽然提供了mail()函数,但并不好用,而PHPMailer是一个不错的邮件发送工具,接下来将详细介绍,需要了解的朋友可以参考下:

本人使用wamp集成开发环境,Apache2.4.4, Mysql5.6.12 , php5.4.12.开始的时候使用mail()发送邮件,更改配置始终无法成功,了解到mail()函数使用需要sendmail程序。又下载了sendmail程序扩展包。按照网上的说法也改好了php.ini和sendmail.ini。使用foxmail 7.1创建了自己的qq邮箱账户,开启了POP3/SMTP服务,更改发件服务器为POP3,使用和收件服务器相同的身份验证,结果还是报错:Warning: mail(): SMTP server response: 503 Error: need EHLO and AUTH first ! in F:\PHP\wamp\www\mail.php on line 8。以下是使用mail()函数发送邮件的php代码:

[php] view plain copy

span style="font-size:14px"?php

$to = "757006080@qq.com";

$subject = "Test mail";

$message = "Hello! This is a simple email message.";

$from = "757006080@qq.com";

$headers = "From: $from";

$send=mail($to,$subject,$message,$headers);

if($send)

echo "Mail Sent";

else

echo "Sorry,mail sent failed!"

?/span

在CSDN论坛上发现phpmailer可以方便快捷的发送邮件,以下写出详细使用教程:

1.需要下载PHPMailer文件包,(点击打开链接)

2.确认你的服务器已经系统支持socket,通过phpinfo()查看是否支持socket;

3.把文件解压到你的WEB服务器目录下,就可以使用PHPMailer发送邮件了。

以下为前台表单php代码:

[php] view plain copy

span style="font-size:14px"html

body

h3phpmailer Unit Test/h3

请你输入font color="#FF6666"收信/font的邮箱地址:

form name="phpmailer" action="testemail.php" method="post"

input type="hidden" name="submitted" value="1"/

邮箱地址: input type="text" size="50" name="to" /

br/

input type="submit" value="发送"/

/form

/body

/html /span

以下为后台程序:

[php] view plain copy

?php

/**

* Simple example script using PHPMailer with exceptions enabled

* @package phpmailer

* @version $Id$

*/

header("content-type:text/html;charset=utf-8");

ini_set("magic_quotes_runtime",0);

require('class.phpmailer.php');

try {

$mail = new PHPMailer(true); //New instance, with exceptions enabled

//$body = file_get_contents('contents.html');

//$body = preg_replace('/\\\\/','', $body); //Strip backslashes

$to = $_POST['to'];

$mail-CharSet="GB2312";//设置邮件字符编码否则邮件会乱码

$mail-Encoding="base64";

$mail-IsSMTP(); // tell the class to use SMTP

$mail-SMTPAuth = true; // enable SMTP authentication

$mail-Port = 25; // set the SMTP server port

$mail-Host = "smtp.qq.com"; // SMTP server

$mail-Username = "757006080@qq.com"; // SMTP server username

$mail-Password = "000000000000"; // SMTP server password

//$mail-IsSendmail(); // tell the class to use Sendmail

$mail-AddReplyTo("757006080@qq.com","han qing");

$mail-From = "757006080@qq.com";

$mail-FromName = "han qing";

//$to = "hanqing757@gmail.com";

$mail-AddAddress($to);

$mail-Subject =$mail-Subject = "=?utf-8?B?" . base64_encode("First PHPMailer Message") . "?=";

$mail-Body = "h1phpmailer演示/h1 这是用PHPMAILER发的第一份邮件,从QQ邮箱发到Google邮箱.";

$mail-AddAttachment("F:/myloe.jpg");

$mail-AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test

$mail-WordWrap = 80; // set word wrap

//$mail-MsgHTML($body);

$mail-IsHTML(true); // send as HTML

$mail-Send();

echo 'Message has been sent.';

} catch (phpmailerException $e) {

echo $e-errorMessage();

}

?

php空间服务器发送邮件的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于php发送邮箱、php空间服务器发送邮件的信息别忘了在本站进行查找喔。

取消
扫码支持 支付码