本文目录一览:
sendemail.php?username=admin什么意思
这是php网站的url(地址) 意思就是给 sendemail.php 这个页面传递 参数username 这个参数username的值为admin 看你提出这样的问题 应该不会编程 不知道这样说你会不会懂。不过也只能这么说哦。
如何使用sendEmail发送邮件
方法1 安装sendmail即可使用, mail -s "test" user@sohu.com content.txt bin/mail会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,配置非常麻烦,而且会带来不必要的资源占用。 方法2。利用外部的smpt服务器 而通过修改配置文件可以使用外部SMTP服务器,可以达到不使用sendmail而用外部的smtp服务器发送邮件的目的: 修改/etc/nail.rc (/etc/mail.rc)
set from=fromUser@domain.com smtp=smtp.domain.com
set smtp-auth-user=username smtp-auth-password=password
set smtp-auth=login
说明:
- from是发送的邮件地址
- smtp是发生的外部smtp服务器的地址
- smtp-auth-user是外部smtp服务器认证的用户名
- smtp-auth-password是外部smtp服务器认证的用户密码
- smtp-auth是邮件认证的方式 配置成功后,就可以使用了 可以发送一封邮件测试一下: mail -s "test" username@163.com content.txt 其中-s后面的是邮件标题,user@sohu.com是收件人地址,content.txt里面是邮件正文 mail 命令的使用 mailq可以查看系统队列
如何在PHP网页中发送邮件
先建一个邮件发送的类 sendEmail.class.php页面:
<?php
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 = "";
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;
}
}
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 . $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, $lastact);
fclose($fp);
return 0;
}
}
?>
然后建立一个发送页面:sendEmail.php
<?php
require_once('sendemail.class.php');
if((isset($_POST["send"])) && ($_POST["send"]=="form1")) {
// 获取收件人地址
$sendto = $_POST['txt1'];
$sendfrom = "发件人邮箱";
$mailpass = "发件人邮箱密码";
$mailserver = "邮箱服务器";
$subject = $_POST['txt3'];
$message = $_POST['textarea'];
$sm = new smail( $sendfrom, $mailpass, $mailserver );
$end = $sm->send( $sendto, $sendfrom, $subject, $message );
if( $end ) echo $end;
else echo "<script>alert('发送成功');</script>";
}
?>
<center>
<form style="width:524px; height:107px;" method="post" name="form1" id="form1" action="">
<table width="524" height="107" border="0" align="center">
<!--DWLayoutTable-->
<tr>
<td height="60" colspan="2" align="center" valign="middle" bgcolor="#999999">
<font color="#339933" size="+4" face="隶书"><strong>发送电子邮件</strong></font>
</td>
</tr>
<tr>
<td width="109" height="44" align="left" valign="middle" bgcolor="#CCCC99">
<strong><font size="5">收件人:</font></strong>
</td>
<td width="405" align="left" valign="middle" bgcolor="#CCCC99">
<input type="text" name="txt1" />
</td>
</tr>
<tr>
<td height="44" align="left" valign="middle" bgcolor="#99CCFF">
<strong><font size="5">主题:</font></strong>
</td>
<td valign="middle" bgcolor="#99CCFF">
<input type="text" name="txt3" />
</td>
</tr>
<tr>
<td height="163" align="left" valign="middle" bgcolor="#66CCFF">
<strong><font size="5">内容:</font></strong>
</td>
<td valign="top" bgcolor="#66CCFF">
<textarea name="textarea" style="width:405px; height:163px"></textarea>
</td>
</tr>
<tr>
<td height="37" colspan="2" align="center" valign="middle" bgcolor="#6699CC">
<input type="submit" value="发送" />
</td>
</tr>
</table>
<input type="hidden" name="send" value="form1" />
</form>
</center>