windows下使用php自带的mail函数实现简单的邮件发送实例(QQ亲试成功)

功能实现:通过中间邮箱把客户的需求和产品信息全部发送到公司的业务员邮箱

环境及工具:

win7_64bit

phpstudy(初学者推荐工具) 包含php5.3、sendmail(没有的话可网上下)

两个QQ号 一个发一个收(我只有QQ邮箱,所以没测试其他邮箱,如163等)

前台(HTML+css+js):

<!-- Get quote popup start-->
<div class="option-container">
<style> @import "https://fonts.googleapis.com/css?family=Raleway";
* { box-sizing: border-box; }
body {
margin: 0;
padding: 0;
background: #fff;
font-family: Raleway;
text-transform: uppercase;
font-size: 11px;
}
h1{ margin: 0; }
#contact {

-webkit-user-select: none; /* Chrome/Safari */
-moz-user-select: none; /* Firefox */
-ms-user-select: none; /* IE10+ */
margin: auto;
padding: 5px 30px ;
width: auto;
height: auto;
line-height: 30px;
background: black;
color: white;
font-weight: 700;
text-align: center;
cursor: pointer;
border: 1px solid white;
}

#contact:hover { background: #666; }
#contact:active { background: #444; }

#contactForm {
z-index: 800;
display: none;
border: 2px solid #2979ff;
box-shadow:2px 3px 15px #2979ff;
padding: 10px;
width:380px;
text-align: center;
background-color: #fff;
position: fixed;
top:50%;
left:50%;
transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%)

}
.cf_regard{
color:#2979ff;
font-size:17px;
}
input, textarea {
margin: .8em auto;
font-family: inherit;
text-transform: inherit;
font-size: inherit;

display: block;
width: 280px;
padding: .4em;
}
textarea { height: 80px; resize: none; }

.formBtn {
width: 140px;
display: inline-block;

background: black;
color: #fff;
font-weight: 100;
font-size: 1.2em;
border: none;
height: 30px;
}</style>
<button class="btn btn-default" id="contact">Click to Enquiry</button>
<div id="contactForm" style="">
<h2 style="font-size:20px">Keep in touch!</h2>
<form action="send.php" method="post">
<input placeholder="Name" type="text" name="cf_name">
<input placeholder="Email" type="email" name="cf_email">
<input placeholder="Phone no." type="phone" name="cf_phone">
<input placeholder="subject" type="text" name="cf_regard" class="cf_regard" >
<textarea placeholder="Comment" cols="35" rows="5" name="cf_message"></textarea>
<input class="formBtn" type="submit" value="submit" />
<input class="formBtn" type="reset" value="reset"/>
</form>
</div>
<script>
$(function() {

// contact form animations
$('#contact').click(function() {
$('#contactForm').fadeToggle();
//Get product information
var textName=$("#content h1").text();
$(".cf_regard").val(textName);
})
$(document).mouseup(function (e) {
var container = $("#contactForm");

if (!container.is(e.target)
&& container.has(e.target).length === 0)
{
container.fadeOut();
}
});

});
</script>
</div>
<!-- Get quote popup end -->

后台(PHP):

<?php
$field_name = $_POST['cf_name'];
$field_email = $_POST['cf_email'];
$field_phone = $_POST['cf_phone'];
$field_regard = $_POST['cf_regard'];
$field_message = $_POST['cf_message'];

$mail_to = '2164792283@qq.com';
$subject = 'product Name: ' .$field_regard.'';

$body_message = 'User Name: ' .$field_name."\n";
$body_message .= 'User E-mail: ' .$field_email."\n";
$body_message .= 'User Phone: ' .$field_phone."\n";
$body_message .= 'User Subject: ' .$field_regard."\n";
$body_message .= 'User Message: ' .$field_message.'';

$mail_status = mail($mail_to, $subject, $body_message);
if ($mail_status) { ?>
<script>
alert('Thank you for your Enquiry. We will respond as soon as Possible');
window.history.go(-1);
</script>
<?php
}
else { ?>
<script>
alert('Message failed. Please, send an email to 2164792283@qq.com ');
</script>
<?php
}
?>

环境配置文件:

操作:

1、需要用到mail函数,大家可以调用 http://localhost/phpinfo.php 来查看自己的服务器是否支持这个函数。

这里mail邮件函数是 PHP 核心的组成部分。无需安装即可使用这些函数。

2、作为邮件发送方的QQ必须开启SMTP服务,不开启是无法实现在php脚本中使用该QQ邮箱实现邮箱发送的。具体如何设置可到网上百度。

php.ini :

SMTP = smtp.zoho.com

smtp_port =465

sendmail_from = 2164792283@qq.com(公司业务员邮箱)

sendmail_path ="C:\PHPsendmail\sendmail.exe -t"(sendmail对应地址,尽量越短越好!)

sendmail只能在网上下载压缩文件,window系统没有。

sendmail.ini:

smtp_server=smtp.zoho.com

smtp_port=465

smtp_ssl=auto

auth_username= as0090@asicedirect.com(中间邮箱)
auth_password= ######(中间邮箱的密码)

force_sender= as0090@asicedirect.com

error_logfile=error.log 建议开启(将前面的分号去掉),便于查找问题

debug_logfile=debug.log 建议开启(将前面的分号去掉),便于查找问题

总结:

最终能实现发送邮件,但可以看到这些邮件都会被腾讯判定为垃圾邮件放到垃圾箱中,根据研究发现,也许是PHP的问题,最后可以把中间邮箱添加为好友,并修改备注,就不会被判定为垃圾邮箱。虽然我只是一名前端开发师,但是我有一个做全栈的梦!

资料查询:

菜鸟教程:http://www.runoob.com/php/php-ref-mail.html

opencart.com插件:https://www.opencart.com/index.php?route=marketplace/download&member_token=W5IE8x4gtAJsYHVgjk0eLmuzo5c47rtD&extension_id=32635&filter_license=0

W3C:http://www.w3school.com.cn/php/php_ref_mail.asp
菜鸟教程:http://www.runoob.com/php/php-mail.html

42.PHP--电商网站的询价插件的更多相关文章

  1. YunCart电商网站支付宝接口出现500错误

    yuncart 是一套易与集成的php开源商城系统,方便多人同时经行二次开发,Yuncart 可以以非常方便的方式切换到sql server,oracle等数据库,大小1.9MB,感兴趣的朋友,可以去 ...

  2. 电商网站jQuery放大镜代码

    分享一款电商网站jQuery放大镜代码.这是一款基于jquery.elevatezoom插件实现的类似淘宝放大镜代码,提供40多种参数,可自由配置多种效果,适合电商或图片类网站使用.效果图如下: 在线 ...

  3. 项目二:企业级java电商网站开发(服务端)

    声明:项目源于网络,支持正版教程,学习使用,仅记录在此 项目介绍 企业级java电商网站开发(服务端),模块划分:用户管理,商品管理,商品品类管理,订单管理,订单详情管理,购物车管理,收货地址管理,支 ...

  4. [.NET] 一步步打造一个简单的 MVC 电商网站 - BooksStore(一) (转)

    http://www.cnblogs.com/liqingwen/p/6640861.html 一步步打造一个简单的 MVC 电商网站 - BooksStore(一) 本系列的 GitHub地址:ht ...

  5. 如何一步一步用DDD设计一个电商网站(九)—— 小心陷入值对象持久化的坑

    阅读目录 前言 场景1的思考 场景2的思考 避坑方式 实践 结语 一.前言 在上一篇中(如何一步一步用DDD设计一个电商网站(八)—— 会员价的集成),有一行注释的代码: public interfa ...

  6. 如何一步一步用DDD设计一个电商网站(八)—— 会员价的集成

    阅读目录 前言 建模 实现 结语 一.前言 前面几篇已经实现了一个基本的购买+售价计算的过程,这次再让售价丰满一些,增加一个会员价的概念.会员价在现在的主流电商中,是一个不大常见的模式,其带来的问题是 ...

  7. 如何一步一步用DDD设计一个电商网站(十)—— 一个完整的购物车

     阅读目录 前言 回顾 梳理 实现 结语 一.前言 之前的文章中已经涉及到了购买商品加入购物车,购物车内购物项的金额计算等功能.本篇准备把剩下的购物车的基本概念一次处理完. 二.回顾 在动手之前我对之 ...

  8. 如何一步一步用DDD设计一个电商网站(一)—— 先理解核心概念

    一.前言     DDD(领域驱动设计)的一些介绍网上资料很多,这里就不继续描述了.自己使用领域驱动设计摸滚打爬也有2年多的时间,出于对知识的总结和分享,也是对自我理解的一个公开检验,介于博客园这个平 ...

  9. 如何一步一步用DDD设计一个电商网站(七)—— 实现售价上下文

    阅读目录 前言 明确业务细节 建模 实现 结语 一.前言 上一篇我们已经确立的购买上下文和销售上下文的交互方式,传送门在此:http://www.cnblogs.com/Zachary-Fan/p/D ...

随机推荐

  1. POJ 3278 Catch That Cow[BFS+队列+剪枝]

    第一篇博客,格式惨不忍睹.首先感谢一下鼓励我写博客的大佬@Titordong其次就是感谢一群大佬激励我不断前行@Chunibyo@Tiancfq因为室友tanty强烈要求出现,附上他的名字. Catc ...

  2. 相对定位和绝对定位 left和margin-left

    1.直接在css中设置left生效的前提是必须设置父容器position:absolute或relative,如果不设置则会以最近一个定位的父对象为参考点,.margin-left则不用设positi ...

  3. Django:模型model和数据库mysql(一)

    以一个栗子尝试来记录: 两个表存储在数据库中,BookInfo表示书,HeroInfo表示人物.一本书中有多个人物 在MySQL中新建一个数据库Django1,不用创建表,用Django模型来配置数据 ...

  4. angular4 辅助路由

    1.辅助路由 2. 创建chat组件 ng g component chat 3. 组件html css: 1 2 3 4 5 6 7 .chat{   background:green;   hei ...

  5. 用PIP 安装或升级python遇到错误提示

    用PIP 安装或升级python遇到错误提示 $ pip install pythons Collecting pythons Could not find a version that satisf ...

  6. 可执行代码(Executable Code)目标代码(object code)

    小结: 1.可执行代码(Executable Code)是指将目标代码(object code)连接后形成的代码,简单来说是机器能够直接执行的代码. https://baike.baidu.com/i ...

  7. PHP之后期静态绑定

    PHP后期静态绑定的(late static bindings) 理解PHP延迟静态绑定 static::中的static其实是运行时所在类的别名,并不是定义类时所在的那个类名.这个东西可以实现在父类 ...

  8. mysql学习【第4篇】:MySQL函数和编程

    狂神声明 : 文章均为自己的学习笔记 , 转载一定注明出处 ; 编辑不易 , 防君子不防小人~共勉 ! mysql学习[第4篇]:MySQL函数 官方文档 : 官方文档 常用函数 分类: 数学函数 , ...

  9. dp 单调性优化总结

    对于单调性优化其实更多的是观察dp的状态转移式子的单调性 进而用优先队列 单调队列 二分查找什么的找到最优决策 使时间更优. 对于这道题就是单调性优化的很好的例子 首先打一个暴力再说. f[i][j] ...

  10. java之String类在堆栈存储机制

    String类是一个比较特殊的类,最主要的体现是它有多种创建形式,例如,String a ="abc";Sting a=new("abc");表面上看得到的结果 ...