将使用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 '))。单击(function () {$)。Ajax ({type:' post ',url3360' bao.php ',datatype3360' JSON ',send 3360 function(){ $(' # result ')},success : function(JSON){ if(JSON . msg==1){ var str=' ';var res=json.res$.每个(RES,function (index,array){ str=' p1st span ' array[' I ']'/span红包,金额span' array['money'] '/span元,余额span' array['total']'元/span/p;});$('#result ')。html(字符串);} else {$('#result ')。html('数据错误!');} } });});});PHP代码:bao.php
$ total=20//红包总额为$ num=10//分为10个红包,支持10人随机领取$ min=0.01//对于($i=1)每个人至少可以领取0.01元;$ i $ num$ I){ $ safe _ total=($ total-($ num-$ I)* $ min)/($ num-$ I);//随机安全上限$ money=mt _ rand ($ min * 100,$ safe _ total * 100)/100;$ total=$ total-$ money;艾可的。$ i .“红包”:$钱。元,余额:'。共计美元。”袁;}回显“the”。$num。红包:'。共计美元。元,余额:0元;效果如图所示: