php

NinjaForms Server Side Validation Frozen on “Processing”

[亡魂溺海] 提交于 2021-02-19 23:29:44
问题 I'm working with Ninja Forms on Wordpress 5.1.1 to submit a simple form. However, I need a simple server-side validation to take place. I've been sifting for days through documentation and the web, but I cannot find a solution to this issue. So far, I've been able to attach my function to the Ninja Form's ninja_forms_submit_data webhook. I've confirmed that the PHP is indeed being executed. However, when I submit the form, it is stuck on "Processing" when I try to return a custom error. I

NinjaForms Server Side Validation Frozen on “Processing”

主宰稳场 提交于 2021-02-19 23:26:24
问题 I'm working with Ninja Forms on Wordpress 5.1.1 to submit a simple form. However, I need a simple server-side validation to take place. I've been sifting for days through documentation and the web, but I cannot find a solution to this issue. So far, I've been able to attach my function to the Ninja Form's ninja_forms_submit_data webhook. I've confirmed that the PHP is indeed being executed. However, when I submit the form, it is stuck on "Processing" when I try to return a custom error. I

填坑前序(json坑)

别等时光非礼了梦想. 提交于 2021-02-19 11:48:54
之前空间开了一个坑,说要分享一下json学习的心得,嘛,最近一段时间忙着应聘,完了还要准备学javaweb框架和vue.js,没来得及填坑,那么明天开始填上上周说的json的学习的坑,首先,由于我目前用Java开发后台,所以这次我们学的是Java的json处理(虽然PHP比JAVA的容易emmmmmm,PHP天下第一!) 由于学校还没教json,我先给不清楚的朋友介绍下json(以下资料来自CSDN博客 https://blog.csdn.net/SiLaSiLa__/article/details/79479196 ) JSON的全称是”JavaScript Object Notation”,意思是JavaScript对象表示法,它是一种基于文本,独立于语言的轻量级数据交换格式。XML也是一种数据交换格式,为什么没有选择XML呢?因为XML虽然可以作为跨平台的数据交换格式,但是在JS(JavaScript的简写)中处理XML非常不方便,同时XML标记比数据多,增加了交换产生的流量,而JSON没有附加的任何标记,在JS中可作为对象处理,所以我们更倾向于选择JSON来交换数据。这篇文章主要从以下几个方面来说明JSON。 1,JSON的两种结构 2,认识JSON字符串 3,在JS中如何使用JSON 4,在.NET中如何使用JSON 5,总结 JSON的两种结构 JSON有两种表示结构

php后端跨域处理

岁酱吖の 提交于 2021-02-19 11:39:47
本文通过设置Access-Control-Allow-Origin来实现跨域。本文重点是说在处理的 请写 Access-Control-Allow-Credentials:true 这个true必须是字符串形式,否则被解析为1 例如: 客户端的域名是zhibo.nandakaoyanapp .com , 而请求的域名是 www.nandakaoyanapp .com 。 如果直接使用ajax访问,会有以下错误: XMLHttpRequest cannot load https:// www.nandakaoyanapp .com . No 'Access-Control-Allow-Origin' header is present on the requested resource.Origin ' https:// www.nandakaoyanapp .com ' is therefore not allowed access. 1、允许单个域名访问 指定某域名( http://www.nandakaoyanapp.com )跨域访问,则只需在 www.nandakaoyanapp .com 文件头部添加如下代码: header('Access-Control-Allow-Origin: zhibo.nandakaoyanapp.com '); 2、允许多个域名访问

基于hprose-golang创建RPC微服务

女生的网名这么多〃 提交于 2021-02-19 11:02:12
Hprose (High Performance Remote Object Service Engine) 是一款先进的轻量级、跨语言、跨平台、无侵入式、高性能动态远程对象调用引擎库。它不仅简单易用,而且功能强大。 官网: https://hprose.com/ 本文将讲解如何使用 Hprose go 服务端编写一个微服务,并实现客户端调用。 本文的涉及的项目代码托管在github: https://github.com/52fhy/hprose-sample 。 使用Go实现服务端 初始化 git初始化: git init echo "main" >> .gitignore echo "# hprose-sample" >> README.md 项目使用 go mod 管理依赖,请确保安装的Go版本支持该命令。先初始化 go.mod 文件: go mod init sample 最终项目目录结构一览: ├── config │ └── rd.ini ├── dao ├── main.go ├── model └── util ├── config.go └── state.go ├── service │ └── sample.go ├── go.mod ├── go.sum ├── client_test.go ├── README.md ├── php ├── logs

php抽奖算法(适用于九宫格、大转盘)

拜拜、爱过 提交于 2021-02-19 11:00:09
/* * 不同概率的抽奖原理就是把0到*(比重总数)的区间分块 * 分块的依据是物品占整个的比重,再根据随机数种子来产生0-* 中的某个数 * 判断这个数是落在哪个区间上,区间对应的就是抽到的那个物品。 * 随机数理论上是概率均等的,那么相应的区间所含数的多少就体现了抽奖物品概率的不同。 */ /** * 抽奖方法 * @return [array] [抽奖情况] */ public function doDraw() { // 奖品数组 $proArr = array( // id => 奖品等级, name => 奖品名称, v => 奖品权重 array('id'=>1,'name'=>'超级奖品','v'=>0), array('id'=>2,'name'=>'特等奖','v'=>1), array('id'=>3,'name'=>'一等奖','v'=>5), array('id'=>4,'name'=>'二等奖','v'=>10), array('id'=>5,'name'=>'三等奖','v'=>12), array('id'=>6,'name'=>'四等奖','v'=>22), array('id'=>7,'name'=>'五等奖','v'=>50), array('id'=>8,'name'=>'六等奖','v'=>100), array('id'=>9,'name

php跨域问题记录

岁酱吖の 提交于 2021-02-19 10:49:02
记录跨域问题 一、问题 在控制层加了如下代码: header('Access-Control-Allow-Origin: '.$_SERVER['HTTP_ORIGIN'] ); header('Access-Control-Allow-Credentials: true'); header('Access-Control-Allow-Headers: X-Requested-With,Content-Type,Accept'); 打开chrome的network里的response,没有这几个值~ 但是同样的代码我在本地另一个项目里是OK的,项目环境是Nginx做了层代理,实际用的是PHP当Apache模块的方式,就开始怀疑: 输出时框架限制了 Nginx/Apache限制了header(ps:我们项目是用Nginx当了反向代理,PHP当Apache模块) 灵魂拷问:PHP输出时这些header是怎么返回的? 二、解决 1.框架 用xdebug跟了下,没看到框架里有任何限制不能更改header 2.web服务器 看到response每次返回的都一样,以为是运维控制了返回的选项,不能随意添加,和运维同事沟通了下,发现确实是不能随意添加header头,窃喜以为找到了原因。然而另一个同事说加的跨域允许是OK的;Nginx的conf里加的proxy

面试官问:你说说Redis的几个过期策略?

这一生的挚爱 提交于 2021-02-19 10:47:41
在使用redis时,一般会设置一个过期时间,当然也有不设置过期时间的,也就是永久不过期。当设置了过期时间,redis是如何判断是否过期,以及根据什么策略来进行删除的。 设置过期时间 expire key time(以秒为单位) 这是最常用的方式 setex(String key, int seconds, String value) 字符串独有的方式 除了字符串自己独有设置过期时间的方法外,其他方法都需要依靠expire方法来设置时间如果没有设置时间,那缓存就是永不过期如果设置了过期时间,之后又想让缓存永不过期,使用persist key 三种过期策略 定时删除 在设置key的过期时间的同时,为该key创建一个定时器,让定时器在key的过期时间来临时,对key进行删除 优点: 保证内存被尽快释放 缺点: 若过期key很多,删除这些key会占用很多的CPU时间,在CPU时间紧张的情况下,CPU不能把所有的时间用来做要紧的事儿,还需要去花时间删除这些key 定时器的创建耗时,若为每一个设置过期时间的key创建一个定时器(将会有大量的定时器产生),性能影响严重 懒汉式式删除 key过期的时候不删除,每次通过key获取值的时候去检查是否过期,若过期,则删除,返回null。 优点: 删除操作只发生在通过key取值的时候发生,而且只删除当前key,所以对CPU时间的占用是比较少的

PHP对接淘宝客api完成APP引流优惠券

我的梦境 提交于 2021-02-19 09:18:44
淘宝客现在对多数人来说已经耳熟能详了,属于CPS(Cost Per Sale),一种网络广告收费标准,以实际销售产品数量来换算广告刊登金额。其他收费标准还有常见的CPC(Cost Per Click 按点击次数收费),和按周期展示收费,周期过后下架等。以前接触这方面也比较少,这里就不详细介绍了,下面开始进入如何从懵圈到把接口对接到APP通过应用的流量实现佣金收入。 注册账号 首先在没有对接api前需要去注册一个阿里几个平台的账号,也可以直接用个人/企业 淘宝账号直接登录。 1.淘宝联盟: https://pub.alimama.com/ 2.淘宝开放平台: http://open.taobao.com/ 申请推广位 登录进淘宝联盟,点击“活动推广”,然后选择“推广管理”,这里看你要做的是什么,是web就选择网站管理,app就选择APP管理。不过不管是网站还是APP都是要有雏形已经上线,网站需要内容足够丰富且有备案,APP需要在某应用市场上架,最后就是新建推广填写表单提交审核即可。 ​ 记录key和Secret和下载SDK 提交完成大概一到三个工作日会有结果,成功后点击“查看权限”这时候就可以把App key记录下来,安卓和苹果是分开的,也就是后面调用接口要按系统传入不同的key和secret了。然后点击“查看”就会进入到淘宝开放平台指定的应用详情

How to replace all new lines of string with `<BR>` in php?

妖精的绣舞 提交于 2021-02-19 09:13:29
问题 There are too much confusion about \n and \r. There are lot's of questions in stack about differences between \n and \r. In a nut shell My confusions/questions are: Is \r\n equal to \n\r? Is \r\n cause to two new lines? Is \r cause a new line in output? How can I replace all new lines with <BR> tag in PHP? Not all strings has \r or \n explicitly . Suppose I have a textarea and user inputs some characters including Enter of keyboard. No \r or \n is entered but new lines exist. How to remove