自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

武当山道士的博客

多快好省的写代码

  • 博客(81)
  • 收藏
  • 关注

原创 C++常用开发规范

c++谷歌开发规范

2022-11-14 19:20:22 1012 1

原创 vue CORS 跨域问题 的终极解决方案

CORS private 外网访问内网的跨域问题,跨域问题的终极暴力解决方案The request client is not a secure context and the resource is in more-private address space `private`.

2022-06-11 16:42:44 8043

原创 vue axios 网络状态status=401的时候,接收服务器返回的数据

为啥服务器网络status=401时候,前端无法获取到服务器的数据了呢?原因:因为 axios 默认抛弃了 网络状态不在 [200, 300) 区间的服务器返回解决方案:所以如果项目需要返回此区间以外的状态码(比如: 401),那么需要改axios的库文件:库文件所在位置:node_modules/axios/lib/core/settle.js第16行 原代码如下:if (!response.status || !validateStatus || validateStatus(resp

2021-09-07 13:26:35 1385

原创 微信小程序 地图选取多边形【选中建筑物】

最近项目有个需求:在微信小程序内置地图上渲染出给定的多个多边形的建筑物轮廓,并且在用户点选对应建筑物的时候,给出被选中建筑物的各种详情。难点解析:地图点击的API会返回一个坐标点的经纬度,通过这个经纬度,遍历地图上已渲染出的多边形,判断在哪个多边形内最后封装了一个方法,map.js见附件,其他页面调用方法如下:import MapUtil from '../util/map.js';pa...

2020-06-16 12:44:28 2202 2

原创 微信小程序 ReferenceError: regeneratorRuntime is not defined

微信小程序里如果使用了 async + await,会报这个错误原因:async+await是 ES7 的一个特性,如果微信小程序IDE里开启了ES6转ES5,则会报这个错误。解决方案:第一种方法:开启【增强编译】第二种方法、引入 regenerator- 下载 regenerator:https://github.com/facebook/regenerator/tree/master/packages- 将下载文件里的 regenerator-runtime 文件夹放到小程序的某个目录下,

2020-05-21 17:14:42 3690

原创 阿里云ECS服务器 外网无法访问Mysql

阿里云ECS服务器 外网无法访问Mysql环境:centos系统php环境用的lnmp一键安装包一、阿里云配置安全组出方向开放3306端口,开通后如图:二、ssh远程登录服务器,设置防火墙1、先查看防火墙状态$ firewall-cmd --state # 显示 not running // 防火墙未开启2、开启防火墙$ systemctl start firewalld...

2019-12-13 16:17:02 441

原创 docker 安装php环境lnmp + redis 最简单实践

一、安装docker mac版本的docker 下载地址:https://download.docker.com/mac/stable/Docker.dmg二、安装系统及lnmp环境1、拉取centos的镜像docker pull centos # 拉取官方centos镜像2、 通过centos镜像来创建一个名为: centos-lnmp的容器,运行容器并进入容器内docke...

2019-09-04 16:07:53 945

原创 扫码进入小程序 传参接收 前后台代码+服务器配置

业务场景:商户后台设置完商品,生成预览二维码;用微信扫预览二维码,直接进入微信小程序对应的 商品详情页面( 小程序路径为: pages/item/detail ) 设置扫码进入小程序规则 微信小程序账号登录后,商户后台url字符串(用此字符串生成二维码,比如qrcode等插件)小程序js取参数...

2019-08-28 09:44:43 510 2

原创 微信小程序传数组给后台(thinkphp后台接受前端数组参数)

场景:需要前端传关联数组给后端尝试:常规写法不好使解决:前端json序列化 对象数组 为 字符串 str,然后将此字符串 str 作为参数的值传给后端(比如 schools: str ),后端将收到的参数 先进行htmlspecialchars_decode ,然后json反序列化为对象数组微信小程序js代码:test.jstestArrPost: function(){ // 对象数...

2019-07-02 16:43:09 6575 2

原创 微信小程序【Promise】 通过code请求开发服务器获取openid实例

功能分析:多次回调,用Promise来简化流程app.js 内添加如下代码 /** * 获取微信code * Promise * 用于后续换取openid等操作 * @resolve {String} code * @reject {String} 错误提示 */ getWxCodePromise: function () ...

2019-05-23 13:16:41 730

原创 phpcms v9 网站迁移 详细步骤及注意事项

场景:本地搭好网站放到线上服务器,或者 网站域名变更1、准备:服务器上新建一个数据库 比如: www,并设置对应的账号密码。(尽量不要用root账户)注意:采用pcv9源生安装加回复数据的方式,数据库密码不能有特殊符号。我安装的时候卡在,数据库连接验证这一步,pcv9提示说:”数据库连接成功,但是不能创建...“。所以着重提醒一下2、上传:源码上传到空间根目录,并赋予权限 755,用户...

2019-03-11 16:25:57 1017

原创 阿里云ECS 配置mysql数据库主从(灾备)

用途: 生产mysql数据库灾备,或者用作读写分离环境: 两个服务器环境配置相同(硬件带宽等不同,从库性能略低)- 阿里云ECS、CentOS 7、lnmp1.5集成环境( Mysql5.7 )准备工作:主服务器mysql停止数据读写工作并备份从数据库拷贝主库的完整备份,库名要相同1、master数据库配置文件$ vi /etc/my.cnf #[mysqld] 下面添加 # ...

2019-02-20 18:12:02 3117

原创 lnmp 配置nginx 实现内网/本地域名

需求:微服务 客户端服务器 需要内网访问 api接口服务器解释:传统的外部网址(比如二级域名)也能实现,但是不安全,于是采用内网域名的形式实现步骤:1、nginx解析域名 _innerapi.sd.cn 到 127.0.0.1$ find / -name hosts=================/etc/hosts #这是hosts文件所在的目录=================...

2019-01-15 12:12:23 2487

原创 H5 js点击按钮复制文本到粘贴板

准备:先去下载clipboard.js: 官网移动端效果如下:应用:html+js 代码如下:<!DOCTYPE html><html lang="zh-CN"><head> <meta charset="UTF-8"> &am

2018-12-18 10:06:49 4590

原创 MySQL... ERROR! The server quit without updating PID file

原来mysql运行正常,今天改了一下/etc/my.cnf ,结果出事了:Starting MySQL... ERROR! The server quit without updating PID file (/usr/local/mysql/var/izdfdm53ffn7zjgs74ru5xsd4sd45z.pid).各种百度谷歌,没解决,那些都是别人的方法,解决不了问题,自己看错误...

2018-12-05 17:19:02 15994

原创 微信公众号分享自定义标题、内容、图片 + php后台封装签名signature生成函数

php 微信公众号签名signature生成方法因为要做网页的微信分享,分享的时候想自定义 分享标题 分享摘要 和分享缩略图,所以要用到微信公众号的jssdk,必然就牵扯到微信签名。以thinkphp5为例,展示整个生成和使用的过程。步骤:1、获取微信access_token : 自定义函数 getWxAccessToken();2、根据1 的access_token,获取ticket:...

2018-11-10 16:52:04 3098 2

原创 SQLSTATE[42S22]: Column not found: 1054 Unknown column '1' in 'field list' -- IF查询出错

mysql IF() 查询的时候出现这个错误 场景: user表 age字段,查询并输出字段 is_adult (0表示未成年,1表示已成年) 查询语句如下:SELECT IF( age>18, 1, 0 ) as is_adult FROM user;错误原因:默认返回值类型是任何返回值的相容集合类型,但具体情况视其所在语境而定。如果用在字符串语境中,则返回结果味字符串。如果用...

2018-09-05 11:07:17 38241

原创 微信小程序 换行 空格&连续空格 view不自动换行

一、换行 1、必须在<text/>里, 才能用 \n 来换行 ; 2、<view>里的不能用 \n 换行,想在view里换行,只能再包含一个text 换行例子:<view class='outer_box'> <text class='inner-box'&

2018-08-17 09:23:07 16274

原创 LNMP CentOS 服务器安装 freetds 和 pdo_dblib,TP5里连接sqlserver

1、安装freetds$ cd /root/lnmp1.5/src$ wget ftp://ftp.freetds.org/pub/freetds/current/freetds-current.tar.gz$ tar zxvf freetds-current.tar.gz$ cd freetds-dev.1.00.411$ ./configure --prefix=/usr/loca...

2018-08-10 18:19:37 1008

原创 git + gitolite 搭建版本管理服务器 及操作使用说明

一、GIT安装及使用说明1、不同系统安装git及设置yum install git #centosapt-get install git #ubuntu#mac 安装需要两步如下:homebrew /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/ins...

2018-07-31 18:11:18 5818 2

原创 gitolite 使用说明

前提 已经在服务器安装好gitolite了 安装 gitolite 请参考官方最新指南(有些老的操作说明已经不适合新版本了):http://gitolite.com/gitolite/fool_proof_setup/一、切换管理员(假设新管理员公钥在 keydir/admin.pub): 1、本地生成 并 拷贝公钥 id_rsa.pub:$ ssh-keygen -t rsa -C ...

2018-07-21 09:49:52 1878

原创 微信小程序的 scroll-view 上拉加载数据重复

微信小程序的 scroll-view 上拉加载更多的BUG(数据会多加载,甚至有重复数据)。 问题描述:上拉一次,会多次触发触底函数 onReachBottom();换成自定义加载更多函数, 例如 loadMore(), 问题依旧存在。 生产环境:调试基础库 目前最新版本1.9.94 依旧存在这个问题。 解决方法:加状态控制变量,限制 触底函数/加载更多函数 的触发条件。页面上拉加载更多...

2018-06-28 15:09:44 6766 3

原创 thinkphp3.2.3 多图片上传 保存原图和缩略图到数据库

图片上传函数 _upPics() 放到控制器 BaseController.class.php 里,方便其他控制器继承调用 BaseController.class.php 如下<?phpnamespace Admin\Controller;use Think\Controller;/** * 基础扩展 * @author 武当山道士*/class BaseCont...

2018-06-25 16:20:24 2681

原创 mysql 百万级数据量 数据库优化实例及效果比较【where条件字段加单索引效果最优,毫秒级响应】

mysql百万级数据库优化(本地数据库测试,线上测试到晚上没人了再更新…)本地电脑参数: 处理器:2.6 GHz Intel Core i5 内存: 8 GB 1600 MHz DDR3jy_item表行数(数据量) 1822766 条数据以下是整个优化对比过程#jy_item表行数(数据量)1822766 SELECT count(id) FR...

2018-06-05 17:32:24 1555

原创 js/小程序 正则获取指定字符串后的字符串

场景:源数据字符串为 http://zhipur.com/item?data=SN120180525FEOCE ,需要把 ?data= 后面的字符串(SN120180525FEOCE)取出来 实现:用 stringobj的match()方法实现 代码:var str = 'http://zhipur.com/item?data=SN120180525FEOCE'; var code1...

2018-05-24 16:20:05 9176

原创 微信小程序 下拉刷新/上拉加载更多 (上拉加载更多怎么实现)

参考:微信小程序开发文档->框架>逻辑层->注册页面实现原理: 1、下拉刷新:由于小程序数据是实时渲染的。我们把data{}内的数据清空重新加载即可实现下拉刷新。 2、上拉加载更多(页面上拉触底事件):新获取的数据追加到data{}内的原数据即可。由于小程序数据是实时渲染,小程序在保持原数据显示不变的基础上,自动追加渲染显示新数据。注意(小程序官方有说明):上拉加载更...

2018-05-23 10:10:07 22994 12

原创 微信小程序 支付 - 红包功能实现 附源码( 签名错误、CA证书错误等解决办法)

场景:小程序开发一个拆红包的功能,后台thinkphp3.2,小程序和微信商户平台不是同一个账号,但是已经关联 官方接口文档:微信支付-企业付款到零钱 使用条件 1、商户号(或同主体其他商户号)已入驻90日 2、商户号(或同主体其他商户号)有30天连续正常交易 3、登录微信支付商户平台-产品中心,开通企业付款。 4、红包金额目前最新规定为 0.30元 到 200元(传参...

2018-04-19 16:29:23 5343 4

原创 [DOM] Input elements should have autocomplete attributes (suggested: autocomplete='tel', confirm at

控制台显示: [DOM] Input elements should have autocomplete attributes (suggested: autocomplete=’tel’, confirm at https://goo.gl/6KgkJg)这只是个提示,无关紧要,但是在控制台里显示好多感觉很不爽,去掉它! 译文概要:输入元素应该有自动完成的属性,比如: au...

2018-03-19 17:04:26 17168

原创 微信小程序 用Promise封装wx.request(),简化代码结构

在app.js中 添加自定义post方法 //app.jsApp({ //other code... /** * 自定义post函数,返回Promise * +------------------- * author: 武当山道士<[email protected]> * +------------------- * ...

2018-01-28 17:59:13 19825 3

原创 js 复制 指定容器内容

其实源生js也可以实现,但引入jq库可以方便的兼容复制更多类型dom的内容。 实际使用的时候注意,class 和 标签 有重复性,所以尽量使用id来保证复制源的唯一性html lang="en">head> meta charset="UTF-8"> title>js复制指定dom内容title> script type="text/javascript" s

2018-01-28 02:17:25 1779

原创 微信小程序md5加密算法封装及用法详解--微信小程序生成md5签名

解释: 微信小程序不让引入现成的库文件,于是自己封装一个md5加密算法的js用途: 各种加密场景,比如生成md5签名(本文以生成md5签名为例)md5.js(目录: /utils/md5.js,通过export 输出md5加密方法)/* * 小程序MD5加密算法封装 * +-------------------------------------------------

2018-01-19 11:43:57 18088 2

原创 微信小程序 修改(自定义) 单选/复选按钮样式 checkbox/radio样式自定义

原理:直接覆盖微信小程序定义的 单选/复选按钮样式,从根本上实现样式自定义;本文采用的方法不需要隐藏原来的按钮,也不需要在按钮上附加样式表。 场景:商城购物车 复选框 效果:仿天猫购物车的UI 使用:如果单独页面单独样式,就写到对应page的wxss里,如果整个小程序都用此样式,就写到app.wxss里 复选按钮(checkbox)修改及使用如下 .wxml: <che...

2017-12-28 15:21:39 66708 23

原创 mac 扒网站 siteSucker 和 wget

两种方法一、siteSucker appStore里下载siteSucker,然后按图操作,很简单 二、wget命令行 如果没装wget,请参考: http://blog.csdn.net/abs1004/article/details/76206924wget --mirror -p --convert-links -P [本地路径] [要扒的网址]

2017-12-27 16:47:25 6023

原创 微信小程序网络请求 wx.request() ,data内参数后台获取不到

前端:小程序 接口:thinkphp3.2.3 问题描述:如果小程序设置 method:’POST’,后台 I()无法获取前端传参解决方案一: 小程序:不设置 mothod,小程序默认用’GET’, 后台:I() 正常获取前端传参小程序 .js代码wx.request({ url: 'http://api.zhipur.com/test',//换成实际接口地址

2017-12-18 15:23:38 31996 12

原创 Thinkphp中使用PHPExcel 导入导出excel

ThinkPHP版本:3.2.3 PHPExcel版本:1.8 PHPExcel 官方下载地址:https://github.com/PHPOffice/PHPExcel下载解压后目录结构如下: 1、将目录中的 Classes 文件夹改名为 PHPExcel, 2、改名后的文件夹 复制到 Thinkphp/Library/Vender/ 目录下 完成后目录结构如下: 3

2017-12-06 11:18:19 1434

原创 九宫格抽奖- 前后端代码

前言: 前端:jq+h5 实现九宫格动效 后端:thinkphp3.2.3 实现中奖概率算法 功能:支持读取数据库预设的中奖率及奖品池,中奖率可以自定义,必须是整数 最终效果如下: 代码: choujiang.html代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//E

2017-11-21 16:11:17 14758 9

原创 thinkphp field里使用mysql的 IF CASE综合查询

数据库的order表中的两个字段为: status 状态(取值 :0 表示 未派送;1 表示 派送中;2 表示 已收货) finished 结束时间(默认值为 “0000-00-00 00:00:00”)接口需求:取 order 表中 id 大于10的所有订单列表 要求: 1、如果finished为默认值(”0000-00-00 00:00:00”),则替换为空字符串 “”,否则显示fini

2017-10-31 13:44:38 3359 1

原创 Mac OSX 安装phpredis最详细步骤

Mac 默认的apache php环境下 安装 phpredis的详细步骤,基本上所有坑都趟过了 。。。

2017-10-27 10:48:18 997

原创 微信小程序 首行缩进、 去掉/取消首行缩进

首行缩进 .wxss 代码如下:.str1{ text-indent: 20rpx; text-align: left;}//首行缩进20rpx取消首行缩进.str1{ text-indent: 0rpx; padding-left: 0rpx; text-align: left;}// 取消首行缩进,在小程序里光靠 text-indent:0rpx是不够的,必须加上 padd

2017-10-13 10:47:27 31410 3

原创 MUI click事件无效 click没反应 click监听不到

mui click无效,click没反应

2017-09-27 14:39:47 7497 7

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除