php – 根据MySQL数据库中的库存随机生成数字
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php – 根据MySQL数据库中的库存随机生成数字,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2110字,纯文字阅读大概需要4分钟。
内容图文
嗨,大家好我需要一些帮助,我在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),
'2' => rand(1,2)
);
display_numbers();
}
根据两个变量生成数字,每个数字链接到一个奖品,显然它没有考虑哪些数量有库存,这将导致我发放我没有的奖品,并且它不允许有优势
我需要一种简单的方法来检查一个物品是否有库存,如果它是库存的,它会被添加到一个可以赢得的奖品列表中,我需要它有一个优势,所以一些奖品会出现(很多)比其他基于代码X的简单值的其他人有0.25%的出现机会,而且Y有50%的机会出现.
如果我用更大范围的数字进行设置……
function generate_numbers(){
global $numbers;
$numbers = array(
'0' => rand(1,100),
'1' => rand(1,100),
'2' => rand(1,100)
);
display_numbers(); }
if (($numbers[0] > 0) && ($numbers[0] < 40)){
echo "you win prize x";
else if (($numbers[0] > 40) && ($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数据库中的库存随机生成数字所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。