php – 根据MySQL数据库中的库存随机生成数字

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 根据MySQL数据库中的库存随机生成数字脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
嗨,大家好我需要一些帮助,我在PHP制作的剧本,目前它被设置为一个老虎机游戏,用户可以支付一点钱,生成3个随机数,每个数字链接到他们可以奖赢得.比赛3并赢得所述奖品.

不幸的是,因为我不会总是将每件商品作为奖品赠送给我,我需要一种方法来检查每个数字,并确保它有库存

$stock = $conn – > query(‘SELECT DISTINCT ITemID From codes WHERE Available = 1’);

如果有库存,请将其添加到算法中,该算法将随机选取3个数字

目前我有这样的设置

function generate_numbers(){
global $numbers;
$numbers = array(
'0' => rand(1,2),'1' => rand(1,'2' => rand(1,2)
);
display_numbers();
}

根据两个变量生成数字,每个数字链接一个奖品,显然它没有考虑哪些数量有库存,这将导致我发放我没有的奖品,并且它不允许有优势

我需要一种简单方法来检查一个物品是否有库存,如果它是库存的,它会被添加一个可以赢得的奖品列表中,我需要它有一个优势,所以一些奖品会出现(很多)比其他基于代码X的简单值的其他人有0.25%的出现机会,而且Y有50%的机会出现.

如果我用更大范围的数字进行设置……

function generate_numbers(){
global $numbers;
$numbers = array(
'0' => rand(1,100),100)
);
display_numbers(); }
if (($numbers[0] > 0) && ($numbers[0] < 40)){
echo "you win PRize x";
else if (($numbers[0] > 40) &amp;& ($number[0] < 50)){
echo "you win prize y";
else {
echo "you win prize z";
}

…我仍然要么给出我没有的奖品 – 或者我可以添加一个嵌入式if else来检查代码是否有库存,如果它是给出的,如果它不是没有给予奖品或给予认奖品.

但是这意味着我的股票代码越多,他们被给予的机会就越大,我不想这样做我真的希望它与预定义的赔率完全公平.

所以希望所有这些都是有道理的,这不是一个过于复杂的问题,但我认为这是一个不寻常的问题

感谢阅读,我期待听到你的想法

卢克

解决方法

扫描您的问题,我认为您需要更改您的查询

$stock = $conn -> query('SELECT DISTINCT ItemID From codes WHERE Available = 1 ORDER BY RAND()');

用这个你挑选前3个,你有3个随机奖品,

这是一个快速解决方案.有机会让它更复杂让我想一想……

编辑

经过一些测试,我想我得到了它,

你需要在顶部增加一个列的机会,这将是一个数字,然后出现该记录的机会是N,

代码所在的额外内容

0 = FLOOR(RAND()*机会)

所以最终的代码

$stock = $conn ->query(
    'SELECT DISTINCT ItemID FROM codes WHERE Available = 1 AND 0 = FLOOR(RAND()*chance) ORDER BY RAND()'
);

脚本宝典总结

以上是脚本宝典为你收集整理的php – 根据MySQL数据库中的库存随机生成数字全部内容,希望文章能够帮你解决php – 根据MySQL数据库中的库存随机生成数字所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。