201 起因是订单号重复提交了 out_trade_no

说一下电商遇到的问题:

1.用户可以切换优惠券(奇葩需求),但是订单号一样,会造成总结额total_fee不一致会出现201

2.用户在小程序中下单,但是在微信h5中支付,但是订单号一样,注意程序和h5中的用户的openid和商户的appid肯定不一样,然后造成签名不一致

问题1的解决方案是  生成订单号=本站订单号_总金额

问题2的解决方案是  生成订单号=本站订单号_唯一标识

如果网站遇到问题1和问题2其中之一,那轻松愉快的使用以上方案了,但是我们的网站同时出现以上两种问题

同理可得方案  生成订单号=本站订单号_总金额唯一标识

注意在微信通知给我们网站的时候,用_分割后处理一下我们的订单,再更新我们自己的站点

bootstrap-datetimepicker 时间日历控件的使用

1.必须引入bs和query

<script src=”https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js”></script>
<link href=”https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css” rel=”stylesheet”>
<script src=”https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js”></script>

2.引入bootstrap-datetimepicker的css已经js 其中moment-with-locales-zh-cn.min.js是语言包(只有中文)

<link href=”bootstrap-datetimepicker.min.css” rel=”stylesheet”>
<script src=”moment-with-locales-zh-cn.min.js”></script>
<script src=”bootstrap-datetimepicker.min.js”></script>

3.html代码部分

<div class=”row”>
<div class=”col-sm-6″>
<div class=”form-group”>
<label for=””>选择日期:</label>
<div class=”input-group date” id=’date1′>
<input type=”text” class=”form-control”>
<span class=”input-group-addon”>
<i class=”glyphicon glyphicon-calendar”></i>
</span>
</div>
</div>
</div>
</div>

4.js代码部分

$(function () {
$(‘#date1’).datetimepicker({
format: ‘YYYY-MM-DD HH:mm:ss’,
locale: moment.locale(‘zh-cn’)
});
});

5.小结
format: ‘YYYY-MM-DD HH:mm:ss’ 这一块 如果不想显示时间,可以直接改成YYYY-MM-DD,如果时间只要12小时制度可以改成 YYYY-MM-DD hh:mm:ss

bootstrap-datetimepicker源码

有些时候我们需要在Centos服务器上发送邮件,例如备份MySQL数据库并发送到指定邮箱,这里我们就说下如何从Centos的shell命令发送邮件。

检查、安装、启动sendmail

//检查
ps -ef | grep sendmail
//安装
yum install sendmail
//启动
service sendmail start
//开机启动
chkconfig –level 2345 sendmail on
复制代码
检查并安装mutt
//检查mutt是否安装, 已安装会返回/usr/bin/mutt
# which mutt

//安装mutt
# yum install mutt

配置全局mutt, 直接编辑 /etc/Muttrc 文件
配置用户级mutt, 复制/etc/Muttrc 到 /当前用户/.muttrc

Read More →