PHP下MAIL的另一解决方案

前一段时间我接触到DEC Tru64 Unix 我在上面装了PHP+APACHE,可以用提供的mail函数始终不能正常发信,于是自编了一个函数,它利用UNIX下的管道和PHP的SOCK函数进行发信,经过实验非常驻成功,下面是此函数原代码。
function mymail($mto,$mcc,$msubject,$mbody)
{  
$from="webmaster@backhome.com.cn";
$sign = "\n";//随你便写些什么
$sendmailpath="/usr/lib/sendmail";//Semdmail路径
$bound = "========_".uniqid("BCFMail")."==_";//分界符
  $headers =  "MIME-Version: 1.0\n".
            "Content-Type: multipart/mixed; boundary=\"$bound\"\n".
            "Date: ".date("D, d M H:i:s Y ")."\n".
            "From: $from\n".
            "To: $mto\n".
            "Cc: $mcc\n".
            "Subject: $msubject\n".
            "Status: \n".
            "X-Status:\n".
            "X-Mailer: MY Email Interface\n".
            "X-Keywords:\n\n";
  $content="--".$bound."\n"."Content-Type:text/plain;charset=\"GB2312\"\n\n".$mbody.$sign."\n";
  $end = "\n"."--".$bound."--\n";
  $sock = popen("$sendmailpath -t -f 'webmaster@backhome.com.cn'",'w');
  fputs($sock, $headers);
  fputs($sock, $content);
  fputs($sock, $end);
  fputs($sock, ".\n");
  fputs($sock, "QUIT\n");
  pclose($sock);
}

(0)

相关推荐

  • php mail to 配置详解

    复制代码 代码如下: [mail function] ; For Win32 only. SMTP = mail3.focuschina.com smtp_port = 25 ; For Win32 only. ;sendmail_from = me@example.com 仅仅配置了如上的代码,没有用到用户名和密码,测试代码成功发送邮件 好读书,不求甚解..以上 发送的测试代码: 复制代码 代码如下: <?php [php] view plaincopyprint?在CODE上查看代码片派生到

  • PHP mail()函数使用及配置方法

    配置 工欲善其事,必先利其器.首先我们以windows下面为例进行说明,如何配置一下本地的mail. 下载附件 sendmail.zip -解压到任意路径,修改sendmail.ini,根据实际需要修改下面的信息. 复制代码 代码如下: [sendmail]   smtp_server=smtp.qq.com   smtp_port=25   error_logfile=error.log   debug_logfile=debug.log   auth_username=***@qq.com 

  • 用php发送带附件的Email

    参考了一下网上的文章.俗话说,天下文章一大抄,看你会抄不会抄.关键是能为我所用,这是最重要的.废话不多讲,let's go. 其实发mail很简单,php有现成的函数,可以参考php 的 manual,特别是第四个例子,讲的很详细. 关键是怎么把上传附件跟邮件发送结合起来.关于文件的上传,可以参考http://blog.csdn.net/slamdunk3/archive/2005/02/23/299025.aspx 这篇文章. 讲一下 文件上传的方法及其属性: 我们假设文件上传字段的名称如上例

  • php中mail函数发送邮件失败的解决方法

    本文实例讲述了php中mail函数发送邮件失败的解决方法.分享给大家供大家参考.具体分析如下: php中mail函数是一个自带的发邮件的函数,但是如果你真的要使用mail函数来发邮件那必须是要给你系统安装sendmail组件才可以,下面我就碰到mail发送不了邮件的问题,下面一起来看看解决办法吧. 之前的那台服务器转移过来后,发现网站用mail()发送邮件发不了,但是发现sendmail明明已经安装,如果没有安装sendmail可以执行,代码如下: 复制代码 代码如下: yum install

  • Ubuntu中启用php的mail()函数并解决发送邮件速度慢问题

    如果需要用php的mail()函数来发送邮件,是需要服务器安装sendmail组件才能支持的,这个在php的手册中mail()函数部分也有介绍到.然后在 在Ubuntu下安装sendmail的命令: 复制代码 代码如下: sudo apt-get install sendmail 安装好之后,启动sendmail服务: 复制代码 代码如下: sudo service sendmail start 有了sendmail的支持,就可以在php中用mail()函数发送邮件了. 一般造成在php用mai

  • PHP下MAIL的另一解决方案

    前一段时间我接触到DEC Tru64 Unix 我在上面装了PHP+APACHE,可以用提供的mail函数始终不能正常发信,于是自编了一个函数,它利用UNIX下的管道和PHP的SOCK函数进行发信,经过实验非常驻成功,下面是此函数原代码. function mymail($mto,$mcc,$msubject,$mbody) {  $from="webmaster@backhome.com.cn"; $sign = "\n";//随你便写些什么 $sendmailp

  • linux 下同名符号冲突问题解决方案

    linux 下同名符号冲突问题解决方案 最近的工作中遇到如下令人蛋疼的问题: Linux 下有三个模块aa.bb.cc,基本情况如下: cc 编译连接得到 cc.so 动态库,cc 中有如下接口: cc_fun { -- do();//调用名为do的cc模块内部函数 -- } bb 编译连接得到 bb.a 静态库,bb 中有如下接口: bb_fun { -- handle = dlopen(cc.so, RTLD_LAZY);//加载cc.so pccfun = dlsym(handle, "c

  • WPF下YUV播放的D3D解决方案

    在视频媒体播放,监控系统的构建当中,经常会涉及到YUV数据的显示问题.一般的播放控件以及SDK都是通过使用Window句柄,利用DirectDraw直接在窗口上渲染.但是,如果用户界面是使用WPF开发的时候,通常只能通过WinFormHost在WPF界面中嵌入WinForm来完成.但这么做会遇到AeroSpace的问题,即winform的控件永远浮在WPF的最上层,任何WPF元素都会被盖住,同时缩放和拖动的时候都会造成很差的用户体验.原因是由于WPF和Winform使用了不同的渲染技术. 要在W

  • PHP下ajax跨域的解决方案之window.name实例分析

    本文实例讲述了PHP下ajax跨域的解决方案之window.name.分享给大家供大家参考,具体如下: 原理核心:window对象的name属性是一个很特别的属性,当该window的location变化,然后重新加载,它的name属性可以依然保持不变. 依此原理,我们可以在页面A中用iframe加载其他域的页面B,而页面B中用JavaScript把需要传递的数据赋值给 window.name,页面A的iframe加载完成之后,页面A修改iframe的地址,将其变成同域的一个地址,然后就可以读出w

  • PHP下ajax跨域的解决方案之jsonp实例分析

    本文实例讲述了PHP下ajax跨域的解决方案之jsonp.分享给大家供大家参考,具体如下: 首先要说明一下json和jsonp的区别? json是一种基于文本的数据交换方式,或者叫做描述数据的一种格式. var person = { "name": "test", "age": "25", "sex": "男" }; var data = [1, 2, 3, 4, 5]; 而jsonp是

  • ASP.NET MVC下基于异常处理的完整解决方案总结

    EntLib的异常处理应用块(Exception Handling Application Block)是一个不错的异常处理框架,它使我们可以采用配置的方式来定义异常处理策略.而ASP.NET MVC是一个极具可扩展开发框架,在这篇文章中我将通过它的扩展实现与EntLib的集成,并提供一个完整的解决异常处理解决方案. 一.基本异常处理策略 我们首先来讨论我们的解决方案具体采用的异常处理策略: 对于执行Controller的某个Action方法抛出的异常,我们会按照指定配置策略进行处理.我们可以采

  • 关于ListView下隐藏控件的解决方案分享

    这是ListView模板里的代码,贴一下,方便理解: 方案一: 复制代码 代码如下: <SPAN style="FONT-SIZE: 15px">就是想把DeleteButton 和EditButton 2个按钮隐藏</SPAN> 复制代码 代码如下: <ItemTemplate> <tr> <td> <asp:Button ID="DeleteButton" runat="server&q

  • jQuery ajax在GBK编码下表单提交终极解决方案(非二次编码方法)

    前言: 当jquery ajax在utf-8编码下(页面utf-8,接收utf-8),无任何问题.可以正常post.get,处理页面直接获取正确的内容. 但在以下情况下: GBK -> AJAX POST ->GBK UTF-8 -> AJAX POST ->GBK 后台代码无法获取正确的内容,通常表现为获取到奇怪字符.问号. 经典解决方法: 1:发送页面.接收页面均采用UTF-8编码. 2:发送页面在调用ajax post方法之前,将含有中文内容的input用encodeURIC

  • linux下mysql乱码问题的解决方案

    项目进行到和服务器交互,通过post访问服务器端jsp,jsp访问服务器端mysql数据库,最终返回到客户端的中文出现乱码问题. 在整个流程中,出现错误的原因可能是三个:post未设置编码或者编码不相符合,jdbc出现问题,linux下mysql初始码制问题. 在经过繁琐的排查后,最终确定问题为mysql编码问题.下文介绍如何解决linux下mysql中文乱码问题. 首先进入mysql命令行模式,键入mysql -uroot -p 即可进入.随后键入 SHOW VARIABLES LIKE 'c

  • asp.net下url传递中文的解决方案

    1.设置web.config文件.(我不喜欢设置成这样)  <system.web>  ......  <globalization requestEncoding='gb2312' responseEncoding='gb2312' culture='zh-CN' fileEncoding='gb2312' />  ......  </system.web>  2.传递中文之前,将要传递的中文参数进行编码,在接收时再进行解码.  >> 进行传递  stri

随机推荐