热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PHP自动发邮件_PHP教程

PHP自动发邮件。自动发邮件使用了这个类bbs.php100.comread-htm-tid-121431.html因他用的php版本较老,用到了函数ereg_replace()和ereg()解决方法1ereg_replac
自动发邮件 使用了这个类http://bbs.php100.com/read-htm-tid-121431.html

因他用的php版本较老,用到了函数ereg_replace() ereg()


解决方法

1ereg_replace() 函数,替换为 strtr() 函数

语法不同点如下

详情http://www.php.net/manual/zh/function.ereg-replace.php

详情http://www.w3school.com.cn/php/func_string_strtr.asp

2ereg() 函数,替换为 preg_match() 函数

链接http://blog.163.com/yanli_xu/blog/static/1363672912011420101820393/

preg_match() 函数语法http://www.php.net/manual/zh/function.preg-match.php

修改完毕后,完整代码如下

【邮件类】sm.class.php

smtp( = "", = 25, = ,, ->debug = ->smtp_port = ->relay_host = ->time_out = 30; ->auth = ; ->user = ->pass = ->host_name = "localhost"; ->log_file = "" ->sock = sendmail(, , = "", = "", , = "", = "", = "" = ->get_address(->strip_comment( = (, "(^|(\r\n))(\.)", "\1.\3" .= "MIME-Version:1.0\r\n" (=="HTML" .= "Content-Type:text/html\r\n" .= "To: ".."\r\n" ( != "" .= "Cc: ".."\r\n" .= "From: <"..">\r\n" .= "Subject: ".."\r\n" .= .= "Date: ".("r")."\r\n" .= "X-Mailer:By Redhat (PHP/".().")\r\n" (, ) = (" ", .= "Message-ID: <".("YmdHis", ).".".(*1000000)."."..">\r\n" = (",", ->strip_comment( ( != "" = (, (",", ->strip_comment( ( != "" = (, (",", ->strip_comment( = ( = ->get_address( (!->smtp_sockopen( ->log_write("Error: Cannot send email to ".."\n" = (->smtp_send(->host_name, , , , ->log_write("E-mail has been sent to <"..">\n" } ->log_write("Error: Cannot send email to <"..">\n" = (-> ->log_write("Disconnected from remote host\n" smtp_send(, , , , = "" (!->smtp_putcmd("HELO", ->smtp_error("sending HELO command" (-> (!->smtp_putcmd("AUTH LOGIN", (-> ->smtp_error("sending HELO command" (!->smtp_putcmd("", (-> ->smtp_error("sending HELO command" (!->smtp_putcmd("MAIL", "FROM:<"..">" ->smtp_error("sending MAIL FROM command" (!->smtp_putcmd("RCPT", "TO:<"..">" ->smtp_error("sending RCPT TO command" (!->smtp_putcmd("DATA" ->smtp_error("sending DATA command" (!->smtp_message(, ->smtp_error("sending message" (!-> ->smtp_error("sending . [EOM]" (!->smtp_putcmd("QUIT" ->smtp_error("sending QUIT command" smtp_sockopen( (->relay_host == "" ->smtp_sockopen_mx( } -> ->log_write("Trying to ".->relay_host.":".->smtp_port."\n" ->sock = @(->relay_host, ->smtp_port, , , -> (!(->sock && -> ->log_write("Error: Cannot connenct to relay host ".->relay_host."\n" ->log_write("Error: ".." ("..")\n" ->log_write("Connected to relay host ".->relay_host."\n" smtp_sockopen_mx( = (, "^.+@([^@]+)$", "\1" (!@getmxrr(, ->log_write("Error: Cannot resolve MX \"".."\"\n" ( ->log_write("Trying to "..":".->smtp_port."\n" ->sock = @(, ->smtp_port, , , -> (!(->sock && -> ->log_write("Warning: Cannot connect to mx host ".."\n" ->log_write("Error: ".." ("..")\n" ->log_write("Connected to mx host ".."\n" ->log_write("Error: Cannot connect to any mx hosts (".(", ", ).")\n" smtp_message(, (->sock, ."\r\n". ->smtp_debug("> ".("\r\n", "\n"."> ", ."\n> ".."\n> " (->sock, "\r\n.\r\n" ->smtp_debug(". [EOM]\n" -> = ("\r\n", "", (->sock, 512 ->smtp_debug(."\n" (!("/^[23]/", (->sock, "QUIT\r\n" (->sock, 512 ->log_write("Error: Remote host returned \"".."\"\n" smtp_putcmd(, = "" ( != "" (=="") = = ." ". (->sock, ."\r\n" ->smtp_debug("> ".."\n" -> smtp_error( ->log_write("Error: Error occurred while "..".\n" log_write( ->smtp_debug( (->log_file == "" = ("M d H:i:s ").()."[".()."]: ". (!@(->log_file) || !( = @(->log_file, "a" ->smtp_debug("Warning: Cannot open log file \"".->log_file."\"\n" (, (, ( strip_comment( = "/\([^()]*\)/" ((, = (, , "" get_address( = (, "([ \t\r\n])+", "" = (, "^.*<(.+)>.*$", "\1" smtp_debug( (-> ?> sm.class.php

【发邮件】sm.php

("sm.class.php" = "smtp.qq.com"; =25; = "你的邮箱"; = "1477299439@qq.com"; = "你的账号"; = "你的密码"; = "项目提醒"; = "

有新项目了

"; = "HTML"; = smtp(,,,,); ->sendmail(, , , , ?> sm.php

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/626617.htmlTechArticle自动发邮件使用了这个类 http://bbs.php100.com/read-htm-tid-121431.html 因他用的php版本较老,用到了函数 ereg_replace () 和 ereg() 解决方法 1 ereg_replac...


推荐阅读
  • 本文介绍了一个来自AIZU ONLINE JUDGE平台的问题,即清洁机器人2.0。该问题来源于某次编程竞赛,涉及复杂的算法逻辑与实现技巧。 ... [详细]
  • egg实现登录鉴权(七):权限管理
    权限管理包含三部分:访问页面的权限,操作功能的权限和获取数据权限。页面权限:登录用户所属角色的可访问页面的权限功能权限:登录用户所属角色的可访问页面的操作权限数据权限:登录用户所属 ... [详细]
  • 本文介绍了用户界面(User Interface, UI)的基本概念,以及在iOS应用程序中UIView及其子类的重要性和使用方式。文章详细探讨了UIView如何作为用户交互的核心组件,以及它与其他UI控件和业务逻辑的关系。 ... [详细]
  • 本文探讨了线性表中元素的删除方法,包括顺序表和链表的不同实现策略,以及这些策略在实际应用中的性能分析。 ... [详细]
  • 实现Win10与Linux服务器的SSH无密码登录
    本文介绍了如何在Windows 10环境下使用Git工具,通过配置SSH密钥对,实现与Linux服务器的无密码登录。主要步骤包括生成本地公钥、上传至服务器以及配置服务器端的信任关系。 ... [详细]
  • PHP中Smarty模板引擎自定义函数详解
    本文详细介绍了如何在PHP的Smarty模板引擎中自定义函数,并通过具体示例演示了这些函数的使用方法和应用场景。适合PHP后端开发者学习。 ... [详细]
  • 本文由chszs撰写,详细介绍了Apache Mina框架的核心开发流程及自定义协议处理方法。文章涵盖从创建IoService实例到协议编解码的具体步骤,适合希望深入了解Mina框架应用的开发者。 ... [详细]
  • 本文介绍了使用Python和C语言编写程序来计算一个给定数值的平方根的方法。通过迭代算法,我们能够精确地得到所需的结果。 ... [详细]
  • 本文详细介绍了如何使用SQL*Plus连接Oracle数据库以及使用MySQL客户端连接MySQL数据库的方法,包括基本命令和具体操作步骤。 ... [详细]
  • 如何寻找程序员的兼职机会
    随着远程工作的兴起,越来越多的程序员开始寻找灵活的兼职工作机会。本文将介绍几个适合程序员、设计师、翻译等专业人士的在线平台,帮助他们找到合适的兼职项目。 ... [详细]
  • 一、使用Microsoft.Office.Interop.Excel.DLL需要安装Office代码如下:2publicstaticboolExportExcel(S ... [详细]
  • 本文介绍了如何在 Django 项目中集成和配置 REST Framework,以支持 API 开发。通过在 settings.py 文件中注册 'rest_framework' 应用,可以轻松启用这一功能。 ... [详细]
  • 汇编语言标识符和表达式(四)(表达式与符号定义语句)
    7、表达式表达式是程序设计课程里的一个重要的基本概念,它可由运算符、操作符、括号、常量和一些符号连在一起的式子。在汇编语言中,表达式分为:数值表达式和地址表达式。(1)进制伪指令R ... [详细]
  • 本文针对HDU 1042 N! 问题提供详细的解析和代码实现。题目要求计算给定整数N(0 ≤ N ≤ 10000)的阶乘N!。文章不仅提供了算法思路,还附上了C++语言的具体实现。 ... [详细]
  • 本文探讨了Linux环境下线程私有数据(Thread-Specific Data, TSD)的概念及其重要性,介绍了如何通过TSD技术避免多线程间全局变量冲突的问题,并提供了具体的实现方法和示例代码。 ... [详细]
author-avatar
恨之无用_367
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有