当前位置:首页 > 日记 > 正文

php结合ajax实现手机发红包的案例

php结合ajax实现手机发红包的案例

PHP Ajax有许多的功能都会用到它小编今天就有使用PHP Ajax实现的一个抢红包功能,下面我们来看一个PHP Ajax手机发红包的程序例子,具体如下所示。

PHP发红包基本流程:当输入完红包数量和总金额后,PHP会根据这两个值进行随机分配每个金额,保证每个人都能领取到一个红包,且每个红包金额不等。也就是每个人领取的红包金额要不同,并且所有红包金额总额等于总金额。

php发红包实现原理:

设定总金额为10元,有N个人随机领取:
N=1 第一个
则红包金额=X元;
N=2 第二个
为保证第二个红包可以正常发出,第一个红包金额=0.01至9.99之间的某个随机数
第二个红包=10-第一个红包金额;
N=3 第三个
红包1=0.01至9.99之间的某个随机数
红包2=0.01至(10-红包1-0.01)的某个随机数
红包3=10-红包1-红包2
……

于是我们得到一个规律,在分配当前红包金额时,先预留剩余红白所需最少金额,然后在0.01至总金额-预留金额间取随机数,得到的随机数就是当前红包分配的金额。

实际应用中,程序先将红包金额分配好,即发红包时,红包个数以及每个红包的金额都分配好了,那么用户来抢红包时,我们随机给用户返回一个红包即可。

jquery代码:

$(function() {  $("button").click(function() {  $.ajax({  type: 'POST',  url: 'bao.php',  dataType: 'json',  beforeSend: function() {  $("#result").html('正在分配红包');  },  success: function(json) {  if (json.msg == 1) {   var str = '';   var res = json.res;   $.each(res,   function(index, array) {   str = '<p>第<span>' array['i'] '</span>个红包,  金额<span>' array['money'] '</span>元,余额<span>'   array['total'] '元</span></p>';   });   $("#result").html(str);  } else {   $("#result").html('数据出错!');  }  }  });  }); });


PHP代码:bao.php

$total=20;//红包总金额 $num=10;// 分成10个红包,支持10人随机领取 $min=0.01;//每个人最少能收到0.01元  for ($i=1;$i<$num;$i ) {  $safe_total=($total-($num-$i)*$min)/($num-$i);//随机安全上限  $money=mt_rand($min*100,$safe_total*100)/100;  $total=$total-$money;   echo '第'.$i.'个红包:'.$money.' 元,余额:'.$total.' 元 '; } echo '第'.$num.'个红包:'.$total.' 元,余额:0 元';


效果如图所示:

相关文章

PHP判断一个数组是另一个数组子集

PHP判断一个数组是另一个数组子集

数组,方法,子集,详解,电脑软件,本文实例讲述了PHP判断一个数组是另一个数组子集的方法。分享给大家供大家参考,具体如下:前言今天完成一个算法的过程中,有几个需求模块,其中就有判断$a数组是否是$b数组的子集,可能最近我写c比较多,直接就用for循…

Word文档功能如何画图做出五星红旗

Word文档功能如何画图做出五星红旗

红旗,文档,画图,功能,电脑软件,  Word的画图功能还是很棒的,这里我们就用它来画一面标准的五星红旗。以下是小编为您带来的关于Word画图做出五星红旗,希望对您有所帮助。Word画图做出五星红旗1、单击菜单栏的&ldquo;插入&rdquo;&rarr;图片&…

tim怎么加好友

tim怎么加好友

好友,电脑软件,tim,tim是腾讯推出的一款通讯团建,和qq互联互通,但画面更简洁好看。那么,tim如何加好友呢?下面小编就来介绍tim怎么加好友。主要就是寻找在tim聊天工具中添加好友的功能在哪里。点击右下角tim图标打开界面,点击如图下所示功能按…

PHPStrom 新建FTP项目以及在线操作

PHPStrom 新建FTP项目以及在线操作

操作,项目,在线,教程,电脑软件,前言PhpStorm 是 JetBrains 公司开发的一款商业的 PHP 集成开发工具。它包含了WebStorm的所有功能,前后端都是相当出色,其强大便利之处,相信用过的同学们都知道。那么这里我就和大家聊聊它的 FTP和远程文件同步 …

word对号怎么打出来 word输入对号

word对号怎么打出来 word输入对号

输入,对号,电脑软件,word,word对号怎么打出来呢?word输入对号是&ldquo;&radic; &rdquo;这样的,其实很容易打出来,学习完小编给大家分享的两种word对号打出来的方法,打对号&ldquo;&radic; &rdquo;很轻松。方法一、word中直接插入特殊符号1、打…

WIN2003下Web服务器配置 | 1

WIN2003下Web服务器配置 | 1

服务器配置,电脑软件,Web,一、 IIS6.0综述。 IIS 6.0在Windows2003服务器的四种版本&ldquo;企业版、标准版、数据中心版和Web版&rdquo;中都包含有,它不能运行在Windows XP、2000或NT上。除了本文开头介绍的Windows 2003 Web版本以外,Windo…

浅析lastIndex对正则表达式结果的

浅析lastIndex对正则表达式结果的

正则表达式,电脑软件,lastIndex,前言今天遇到一个问题,用正则表达式去检查同一个字符串时,交替返回true和false。无奈之下,重新翻了翻权威指南,发现罪魁祸首原来是lastIndex。可在控制台尝试下let reg = /[\d]/g//undefinedreg.test(1)//truer…

浅谈php中变量的数据类型判断函数

浅谈php中变量的数据类型判断函数

数据类型,函数,变量,浅谈,电脑软件,在php中我们可以通过 var_dump()打印出变量的类型和值。同时我们可以通过一些函数判断变量的类型。如果只是想得到一个变量的数据类型,可以使用gettype()函数,gettype($t) 返回$t的数据类型的字符串,要是$t…

ps怎么给喷泉静态图添加动态效果?

ps怎么给喷泉静态图添加动态效果?

动态,喷泉,静态,效果,电脑软件,想要使用ps给喷泉图制作正在喷喷泉的动态效果,该怎么制作呢?下面我们就来看看详细的教程。软件名称:Adobe Photoshop 8.0 中文完整绿色破解版软件大小:150.1MB更新时间:2015-11-041、首先启动Photoshop cs5,执行文…

更改3389端口方法

更改3389端口方法

方法,端口,电脑软件, 今天黑客入侵了。公司服务器。搞得今天忙的要死 。查漏洞啊,修复漏洞,打补丁什么的。一个字累, 还改了下3389.下面的步骤: 步骤1:打开注册表编辑器。 开始&mdash;&mdash;运行&mdash;&mdash;regedit 步骤2:查找注…

PHP实现无限极分类生成分类树的方

PHP实现无限极分类生成分类树的方

无限极分类,方法,分类,电脑软件,PHP,本文实例讲述了PHP实现无限极分类生成分类树的方法。分享给大家供大家参考,具体如下:现在的分类数据库设计基本都是:每一个分类有一个id主键字段,一个pid指向父类的id,这样便可实现无限级分类,取出的数据就是…

word批量居中对齐

word批量居中对齐

对齐,批量,电脑软件,word,Word软件,如果我们只是把插入的一张图片居中对齐,操作很简单,选中需要居中对齐的图片,然后按下快捷键CTRL+E就OK!我们继续,如果一篇word里面插入了N张图片,那么如何一次性批量对文档里面的图片进行居中对齐操作呢?word图…