凉风有信,秋月无边
亏我思娇的情绪、好比度日如年
共 1 篇文章

标签:php发邮件源码

PHP实现表单提交发送邮件_php发邮件源码

只需要三个文件就可以了: 注意: 文件自命名需修改表单提交url,包含的类文件名: HTML表单文件: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf-8"> <title>PHP利用smtp类发送邮件范例</title> </head> <body> <form action="sendmail.php" method="post"> <p>收件人:<input type="text" name="toemail" /></p> <p>标  题:<input type="text" name="title" /></p> <p>内  容:<textarea name="content" cols="50" rows="5"></textarea></p> <p><input type="submit" value="发送" /></p> </form> </body> </html> 表单提交的PHP文件: <meta charset="utf-8">  <?php  /**  * 1. 检查邮箱设置是否启用了smtp服务;  * 2. 是否是php环境的问题导致;  * 3. 将26行的$smtp->debug = false改为true,可以显示错误信息,然后可以复制报错信息到网上搜一下错误的原因  */     require_once "email.class.php";      //******************** 配置信息 ********************************      $smtpserver = "smtp.163.com";                         //SMTP服务器     $smtpserverport =25;                                 //SMTP服务器端口     $smtpusermail = "xxx@163.com";                //开通smtp服务的邮箱号码     $smtpemailto = $_POST['toemail'];                    //发送给谁      $smtpuser = "xxx@163.com";                    //开通smtp服务的邮箱号码     $smtppass = "xxx";                        //SMTP服务器的秘钥      $mailtitle = $_POST['title'];                        //邮件主题      $mailcontent = "<h1>".$_POST['content']."</h1>";    //邮件内容      $mailtype = "HTML";                                    //邮件格式(HTML/TXT),TXT为文本邮件      //************************ 配置信息 ****************************                $smtp = new smtp($smtpserver,$smtpserverport,true,$smtpuser,$smtppass);     //这里面的一个true是表示使用身份验证,否则不使用身份验证.      $smtp->debug = false;//是否显示发送的调试信息      $state = $smtp->sendmail($smtpemailto, $smtpusermail, $mailtitle, $mailcontent, $mailtype);      echo "<div style='width:300px; margin:36px auto;'>";      if($state==""){      echo "对不起,邮件发送失败!请检查邮箱填写是否有误。";      echo "<a href='demo.html'>点此返回</a>";      exit();      }     echo "恭喜!邮件发送成功!!";      echo "<a href='demo.html'>点此返回</a>";      echo "</div>";  ?> 类文件: <?php      class Smtp      {          var $smtp_port;          var $time_out;          var $host_name;          var $log_file;          var $relay_host;          var $debug;          var $auth;          var $user;          var $pass;          var $sock;                   function Smtp($relay_host = "", $smtp_port = 25,$auth = false,$user,$pass)          {              $this->debug = FALSE;              $this->smtp_port = $smtp_port;              $this->relay_host = $relay_host;              $this->time_out = 3600;              $this->auth = $auth;              $this->user = $user;              $this->pass = $pass;              $this->host_name = "localhost";              $this->log_file = "";              $this->sock = FALSE;          }          function sendmail($to, $from, $subject = "", $body = "", $mailtype, $cc = "", $bcc = "", $additional_headers = "")          {              $mail_from = $this->get_address($this->strip_comment($from));              $body = ereg_replace("(^|(\r\n))(\.)", "\1.\3", $body);              $header = "MIME-Version:1.0\r\n";                           if($mailtype=="HTML")             {                  $header .= "Content-Type:text/html\r\n";              }              $header .= "To: ".$to."\r\n";                           if ($cc != "")              {                  $header .= "Cc: ".$cc."\r\n";              }              $header .= "From: $from<".$from.">\r\n";              $header .= "Subject: ".$subject."\r\n";              $header .= $additional_headers;              $header .= "Date: ".date("r")."\r\n";              $header .= "X-Mailer:By Redhat (PHP/".phpversion().")\r\n";              list($msec, $sec) = explode(" ", microtime());              $header .= "Message-ID: <".date("YmdHis", $sec).".".($msec*1000000).".".$mail_from.">\r\n";              $TO = explode(",", $this->strip_comment($to));                           if ($cc != "")              {                  $TO = array_merge($TO, explode(",", $this->strip_comment($cc)));              }              if ($bcc != "")              {                  $TO = array_merge($TO, explode(",", $this->strip_comment($bcc)));              }              $sent = TRUE;              foreach ($TO as $rcpt_to)              {                  $rcpt_to = $this->get_address($rcpt_to); ...

赞(0)villainvillain技术笔记 阅读(34)去评论