好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>后端语言>PHP
<tfoot draggable='sEl'></tfoot>

php远程发邮件 php远程开发

很多站长朋友们都不太清楚php远程发邮件,今天小编就来给大家整理php远程发邮件,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 php如何发送邮件 2、 怎么利用php发送邮件求详细教程 3、 如何使用PHP通过SMTP发送电子邮件 4、 使用php 怎么发送邮件?? 5、 实例学习PHP如何实现在线发邮件 6、 php 怎么发邮件 php如何发送邮件

你好,用这个邮件类,需要在调用时,填写一个smtp服务器和你的用户名密码。

<?php

set_time_limit(600);

/*

* 邮件发送类

*/

class smail {

//您的SMTP 服务器供应商,可以是域名或IP地址

var $smtp = "";

//SMTP需要要身份验证设值为 1 不需要身份验证值为 0,现在大多数的SMTP服务商都要验证,如不清楚请与你的smtp 服务商联系。

var $check = 1;

//您的email帐号名称

var $username = "";

//您的email密码

var $password = "";

//此email 必需是发信服务器上的email

var $s_from = "";

/*

* 功能:发信初始化设置

* $from 你的发信服务器上的邮箱

* $password 你的邮箱密码

* $smtp 您的SMTP 服务器供应商,可以是域名或IP地址

* $check SMTP需要要身份验证设值为 1 不需要身份验证值为 0,现在大多数的SMTP服务商都要验证

*/

function smail ( $from, $password, $smtp, $check = 1 ) {

if( preg_match("/^[^\d\-_][\w\-]*[^\-_]@[^\-][a-zA-Z\d\-]+[^\-](\.[^\-][a-zA-Z\d\-]*[^\-])*\.[a-zA-Z]{2,3}/", $from ) ) {

$this->username = substr( $from, 0, strpos( $from , "@" ) );

$this->password = $password;

$this->smtp = $smtp ? $smtp : $this->smtp;

$this->check = $check;

$this->s_from = $from;

}

}

/*

* 功能:发送邮件

* $to 目标邮箱

* $from 来源邮箱

* $subject 邮件标题

* $message 邮件内容

*/

function send ( $to, $from, $subject, $message ) {

//连接服务器

$fp = fsockopen ( $this->smtp, 25, $errno, $errstr, 60);

if (!$fp ) return "联接服务器失败".__LINE__;

set_socket_blocking($fp, true );

$lastmessage=fgets($fp,512);

if ( substr($lastmessage,0,3) != 220 ) return "错误信息1:$lastmessage".__LINE__;

//HELO

$yourname = "YOURNAME";

if($this->check == "1") $lastact="EHLO ".$yourname."\r\n";

else $lastact="HELO ".$yourname."\r\n";

fputs($fp, $lastact);

$lastmessage == fgets($fp,512);

if (substr($lastmessage,0,3) != 220 ) return "错误信息2:$lastmessage".__LINE__;

while (true) {

$lastmessage = fgets($fp,512);

if ( (substr($lastmessage,3,1) != "-") or (empty($lastmessage)) )

break;

}

//身份验证

if ($this->check=="1") {

//验证开始

$lastact="AUTH LOGIN"."\r\n";

fputs( $fp, $lastact);

$lastmessage = fgets ($fp,512);

if (substr($lastmessage,0,3) != 334) return "错误信息3:$lastmessage".__LINE__;

//用户姓名

$lastact=base64_encode($this->username)."\r\n";

fputs( $fp, $lastact);

$lastmessage = fgets ($fp,512);

if (substr($lastmessage,0,3) != 334) return "错误信息4:$lastmessage".__LINE__;

//用户密码

$lastact=base64_encode($this->password)."\r\n";

fputs( $fp, $lastact);

$lastmessage = fgets ($fp,512);

if (substr($lastmessage,0,3) != "235") return "错误信息5:$lastmessage".__LINE__;

}

//FROM:

$lastact="MAIL FROM: <". $this->s_from . ">\r\n";

fputs( $fp, $lastact);

$lastmessage = fgets ($fp,512);

if (substr($lastmessage,0,3) != 250) return "错误信息6:$lastmessage".__LINE__;

//TO:

$lastact="RCPT TO: <". $to ."> \r\n";

fputs( $fp, $lastact);

$lastmessage = fgets ($fp,512);

if (substr($lastmessage,0,3) != 250) return "错误信息7:$lastmessage".__LINE__;

//DATA

$lastact="DATA\r\n";

fputs($fp, $lastact);

$lastmessage = fgets ($fp,512);

if (substr($lastmessage,0,3) != 354) return "错误信息8:$lastmessage".__LINE__;

//处理Subject头

$head="Subject: $subject\r\n";

$message = $head."\r\n".$message;

//处理From头

$head="From: $from\r\n";

$message = $head.$message;

//处理To头

$head="To: $to\r\n";

$message = $head.$message;

//加上结束串

$message .= "\r\n.\r\n";

//发送信息

fputs($fp, $message);

$lastact="QUIT\r\n";

fputs($fp,$lastace);

fclose($fp);

return 0;

}

}

// 发送示例

// 只需要把这部分改成你的信息就行

$sm = new smail( "用户名", "密码", "发件smtp服务器" );

$end = $sm->send( "收件人", "发件人(可以伪造哦)", "标题", "内容" );

if( $end ) echo $end;

else echo "发送成功!$x";

?>

怎么利用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测试数据";

$subject = "Test mail";

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

$from = "757006080@qq测试数据";

$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>

<h3>phpmailer 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测试数据"; // SMTP server

$mail->Username = "757006080@qq测试数据"; // SMTP server username

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

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

$mail->AddReplyTo("757006080@qq测试数据","han qing");

$mail->From = "757006080@qq测试数据";

$mail->FromName = "han qing";

//$to = "hanqing757@gmail测试数据";

$mail->AddAddress($to);

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

$mail->Body = "<h1>phpmailer演示</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通过SMTP发送电子邮件

使用PHP类可以实现,例如:phpmailer,下面是示例代码

require("class.phpmailer.php");?//这个是一个smtp的php文档,网上可以下载得到

$mail?=?new?PHPMailer();?//建立邮件发送类

$mail->CharSet?=?"UTF-8";

$address?="sdasdsadsa@qq测试数据";

$mail->IsSMTP();?//?使用SMTP方式发送

$mail->Host?=?"smtp.126测试数据";?//?您的企业邮局域名

$mail->SMTPAuth?=?true;?//?启用SMTP验证功能

$mail->Username?=?"sffsdf@126测试数据";?//?邮局用户名(请填写完整的email地址)

$mail->Password?=?"123444";?//?邮局密码

$mail->Port=25;

$mail->From?=?"sffsdf@126测试数据";?//邮件发送者email地址

$mail->FromName?=?"在线Q聊";

$mail->AddAddress("$address",?"a");//收件人地址,可以替换成任何想要接收邮件的email信箱,格式是AddAddress("收件人email","收件人姓名")

//$mail->AddReplyTo("",?"");

//$mail->AddAttachment("/var/tmp/file.tar.gz");?//?添加附件

$mail->IsHTML(true);?//?set?email?format?to?HTML?//是否使用HTML格式

$mail->Subject?=?"在线Q聊";?//邮件标题

$mail->Body?=?"在线Q聊网站欢迎访问";?//邮件内容,上面设置HTML,则可以是HTML

if(!$mail->Send())

{

????echo?"邮件发送失败.?<p>";

????echo?"错误原因:?"?.?$mail->ErrorInfo;

????exit;

}

参见:

使用php 怎么发送邮件??

HTTP 函数允许您从脚本中直接发送电子邮件。要使邮件函数可用,PHP 需要已安装且正在运行的邮件系统。要使用的程序是由 php.ini 文件中的配置设置定义的。

语法:mail(to,subject,message,headers,parameters)

参数 描述

to 必需。规定邮件的接收者。

subject 必需。规定邮件的主题。该参数不能包含任何换行字符。

message 必需。规定要发送的消息。

headers 必需。规定额外的报头,比如 From, Cc 以及 Bcc。

parameters 必需。规定 sendmail 程序的额外参数。

例子 1

发送一封简单的邮件:

<?php

$txt = "First line of text\nSecond line of text";

// 如果一行大于 70 个字符,请使用 wordwrap()。

$txt = wordwrap($txt,70);

// 发送邮件

mail("somebody@example测试数据","My subject",$txt);

?>例子 2

发送带有额外报头的 email:

<?php

$to = "somebody@example测试数据";

$subject = "My subject";

$txt = "Hello world!";

$headers = "From: webmaster@example测试数据" . "\r\n" .

"CC: somebodyelse@example测试数据";

mail($to,$subject,$txt,$headers);

?>例子 3

发送一封 HTML email:

<?php

$to = "somebody@example测试数据, somebodyelse@example测试数据";

$subject = "HTML email";

$message = "

<html>

<head>

<title>HTML email</title>

</head>

<body>

<p>This email contains HTML Tags!</p>

<table>

<tr>

<th>Firstname</th>

<th>Lastname</th>

</tr>

<tr>

<td>John</td>

<td>Doe</td>

</tr>

</table>

</body>

</html>

";

// 当发送 HTML 电子邮件时,请始终设置 content-type

$headers = "MIME-Version: 1.0" . "\r\n";

$headers .= "Content-type:text/html;charset=iso-8859-1" . "\r\n";

// 更多报头

$headers .= 'From: <webmaster@example测试数据>' . "\r\n";

$headers .= 'Cc: myboss@example测试数据' . "\r\n";

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

?>

实例学习PHP如何实现在线发邮件

<html>?

<head>?

<title>意见信箱</title>?

</head>?

<body>?

<?php

$mailto="yourname@webjx测试数据";?

if?(($topic!="")?and?($Email!="")?and?($body!=""))?{?

$tmpfilename?=?tempnam("/tmp",?"dm");?

$fp?=?fopen($tmpfilename,?"w");?

fwrite($fp,?"From:?".$Email."\n");?

fwrite($fp,?"Subject:?".$topic."?<访客来信>\n\n");?

fwrite($fp,?$body."\n\n");?

fwrite($fp,?"送信人:".$sender."\n");?

fwrite($fp,?"发信IP:".$REMOTE_ADDR."\n");?

fclose($fp);

$execstr="cat?".$tmpfilename."?│?/usr/lib/sendmail?".$mailto;?

exec($execstr);

$execstr="echo?$sender?$REMOTE_HOST?>>?/var/log/mail.log";?

exec($execstr);?

echo?"信件已送出!!<p><br><br><br><br><br>";?

}?else?{?

?>?

<form?action=<??echo($GLOBALS["PHP_SELF"]);??>?method=post>?

<table?border=0>?

<tr><td>主题</td><td><input?type=text?size=20?name=topic></tr>?

<tr><td>姓名</td><td><input?type=text?size=20?name=sender></tr>?

<tr><td>Email</td><td><input?type=text?size=20?name=Email></tr>?

<tr><td?colspan=2>内容<br><textarea?cols=26?rows=10?name=body></textarea></td></tr>?

<tr><td?colspan=2><div?align=right><input?type=submit?value="送出"></td></tr>?

</table>?

</form>?

<??

}?

?>?

</body>?

</html>

php 怎么发邮件

首先服务器要配置支持收发邮件,比如可以安装sendmail,然后可以用php的mail系列函数实现

这样可以么?

关于php远程发邮件的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于php远程发邮件 php远程开发的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did208445
更新时间:2023-05-03   阅读:24次

上一篇: php反斜线替换 php转义字符反斜杠

下一篇:破解app封装php 破解app代码

最新资料更新

  • 1.php中table行宽 php网页表格
  • 2.php声明字符串 在php中声明变量应使用什么符号
  • 3.php汉字搜索 php 搜索字符串
  • 4.php脚本在线解密 php解密网站程序源码
  • 5.php延迟0.1 php延迟执行不影响页面展示
  • 6.php英国时区代码 英国时区缩写
  • 7.php数组键名排序 php数组值排序
  • 8.基于php在线聊天 php 在线聊天
  • 9.无法使用curlphp 无法使用此地区的账号登陆
  • 10.php开启sslopen php开启gd库
  • 11.php微信推送提醒 php主动推送消息到安卓
  • 12.phpajix的简单介绍
  • 13.mes开源框架PHP mes开源框架 python
  • 14.php客户信息管理 php用户管理
  • 15.web安全php Web安全原理分析与实践
  • 16.无限级菜单php java无限极菜单
  • 17.php语法基础csdn php语言基础
  • 18.php复杂语法 php基本语法
  • 19.php函数rand PHP函数的参数传递包括
  • 20.修改php网页链接 怎么修改php网页

CopyRight:2016-{hedonghua:year}{hedonghua:sitegs} 备案ICP:湘ICP备09009000号-16 {hedonghua:sitejym}
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2025 「好得很程序员自学网」
[ SiteMap ]