- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试制作一种反击破案的开案。我的问题是,我怀疑原因是 wamp,它无法加载,或者需要很长时间,以至于我无法得到任何结果。我阅读了所有关于使用 mysqli 从数据库中选择随机项目的文章,它确实很慢并且不适合使用,但我不认为它会这么慢。所以我真的想知道这是否真的是导致问题的原因,或者是否存在我遗漏的完全不同的错误。预先感谢:)
if(isset($_GET['iid'])) {
$iid = rString($_GET['iid']);
$checkOwnerQuery = $data->query('SELECT * FROM inventory WHERE id = "'.$iid.'" AND ownerId = "'.$id.'"');
$checkOwner = $checkOwnerQuery->num_rows;
if ($checkOwner == 1) {
// OWNER CONFIRMED, CONTINUE OPENING
$randomNmbr = mt_rand(1, 100);
if($randomNmbr == 1) {
while($row = $data->query('SELECT * FROM caserewards WHERE chance = "1" ORDER BY RAND() LIMIT 1')->fetch_assoc()) {
$rewardId = $row['id'];
$rewardName = $row['name'];
$rewardLore = $row['lore'];
$rewardType = $row['type'];
$rewardAmount = $row['amount'];
$rewardChance = $row['chance'];
$rewardColor = $row['color'];
$rewardImg = $row['img'];
$rewardActive = $row['active'];
}
echo $rewardName;
} else if($randomNmbr >= 97) {
while($row = $data->query('SELECT * FROM caserewards WHERE chance = "97" ORDER BY RAND() LIMIT 1')->fetch_assoc()) {
$rewardId = $row['id'];
$rewardName = $row['name'];
$rewardLore = $row['lore'];
$rewardType = $row['type'];
$rewardAmount = $row['amount'];
$rewardChance = $row['chance'];
$rewardColor = $row['color'];
$rewardImg = $row['img'];
$rewardActive = $row['active'];
}
echo $rewardName;
} else if($randomNmbr >= 95) {
while($row = $data->query('SELECT * FROM caserewards WHERE chance = "95" ORDER BY RAND() LIMIT 1')->fetch_assoc()) {
$rewardId = $row['id'];
$rewardName = $row['name'];
$rewardLore = $row['lore'];
$rewardType = $row['type'];
$rewardAmount = $row['amount'];
$rewardChance = $row['chance'];
$rewardColor = $row['color'];
$rewardImg = $row['img'];
$rewardActive = $row['active'];
}
echo $rewardName;
} else if($randomNmbr >= 90) {
while($row = $data->query('SELECT * FROM caserewards WHERE chance = "90" ORDER BY RAND() LIMIT 1')->fetch_assoc()) {
$rewardId = $row['id'];
$rewardName = $row['name'];
$rewardLore = $row['lore'];
$rewardType = $row['type'];
$rewardAmount = $row['amount'];
$rewardChance = $row['chance'];
$rewardColor = $row['color'];
$rewardImg = $row['img'];
$rewardActive = $row['active'];
}
echo $rewardName;
} else if($randomNmbr >= 80) {
while($row = $data->query('SELECT * FROM caserewards WHERE chance = "80" ORDER BY RAND() LIMIT 1')->fetch_assoc()) {
$rewardId = $row['id'];
$rewardName = $row['name'];
$rewardLore = $row['lore'];
$rewardType = $row['type'];
$rewardAmount = $row['amount'];
$rewardChance = $row['chance'];
$rewardColor = $row['color'];
$rewardImg = $row['img'];
$rewardActive = $row['active'];
}
echo $rewardName;
} else if($randomNmbr >= 60) {
while($row = $data->query('SELECT * FROM caserewards WHERE chance = "60" ORDER BY RAND() LIMIT 1')->fetch_assoc()) {
$rewardId = $row['id'];
$rewardName = $row['name'];
$rewardLore = $row['lore'];
$rewardType = $row['type'];
$rewardAmount = $row['amount'];
$rewardChance = $row['chance'];
$rewardColor = $row['color'];
$rewardImg = $row['img'];
$rewardActive = $row['active'];
}
echo $rewardName;
} else if($randomNmbr >= 50) {
goto a;
} else if($randomNmbr <= 50 && $randomNmbr != 1) {
a:
while($row = $data->query('SELECT * FROM caserewards WHERE chance = "50" ORDER BY RAND() LIMIT 1')->fetch_assoc()) {
$rewardId = $row['id'];
$rewardName = $row['name'];
$rewardLore = $row['lore'];
$rewardType = $row['type'];
$rewardAmount = $row['amount'];
$rewardChance = $row['chance'];
$rewardColor = $row['color'];
$rewardImg = $row['img'];
$rewardActive = $row['active'];
}
echo $rewardName;
} else {
echo 'Major danger';
}
echo '<div class="item_img_center" style="background-image: url()"></div>';
} else {
header('Location: inventory.php');
}
} else {
header('Location: inventory.php');
}
最佳答案
我认为您不希望在随机查询周围使用 while
循环,因为每次返回结果时都会重新运行查询(即永远,因为它们将始终返回除非 caserewards 完全为空,否则为结果)。
尝试仅使用:
$row = $data->query('SELECT * FROM caserewards WHERE chance = "50" ORDER BY RAND() LIMIT 1')->fetch_assoc();
$rewardId = $row['id'];
$rewardName = $row['name'];
$rewardLore = $row['lore'];
$rewardType = $row['type'];
$rewardAmount = $row['amount'];
$rewardChance = $row['chance'];
$rewardColor = $row['color'];
$rewardImg = $row['img'];
$rewardActive = $row['active'];
对所有其他查询进行类似的更新。
关于php - 在wamp上使用php从mysql数据库中随机选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45506633/
如何在不丢失配置的情况下升级 WAMP 服务器?我当前的版本是 WAMP 3.0.8,我想将其升级到 WAMP 3.1.0。 来自 WAMP 3.0.8 Apache 2.4.23 MySQL 5.7
我已经尝试通过路由器进行端口转发,并且还禁用了我的防火墙。 我还编辑了 httpd.conf。在那里我改变了 Listen 80 到 Listen 8080 我还从 localhost:80 更改了
无论如何,我可以在 Windows 7 计算机上的 USB 上使用 PHP、mySQL、apache、phpmyadmin 吗?询问的原因是我没有足够的权限在计算机上安装 XAMPP 之类的软件包,我
已关闭。这个问题是 off-topic 。目前不接受答案。 想要改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 已关闭10 年前。 Improve th
我在 Web 浏览器中使用 autobahn-js (0.11.2),在后端使用 crossbar 消息路由器 (v17.2.1)。 在网络断开的情况下(例如由于网络不佳),autobahn-js 客
我正在使用 Wamp 2.2,编辑 conf/extra/httpd-vhosts.conf 编辑此文件以添加 VirtualHosts ,但是当我在 httpd.conf 中取消注释行时 code>
作为我用来验证为站点完成的编程的一些自动部署 + 测试脚本的一部分,我有一些更新 Apache 配置文件的脚本。我想以编程方式重新启动 WAMP,以使更改生效。有没有好的方法可以做到这一点? 脚本是p
您好 Java 代理开发框架开发人员!我想将 WAMP 与 JADE 一起使用,我可以这样做吗,很简单,因为我非常反对 WAMP。还是 JADE 只推荐与 Java 相关的技术进行接口(interfa
我安装了wamp2.4。我卸载了然后安装wamp2.5。现在我在 "C:\wamp\bin\mysql" 中有 2 个文件夹 mysql5.6.12 mysql5.6.17 我将所有数据库文件夹从my
我有一个运行项目的本地 WAMP 服务器 (c:\wamp\www\myProject)。我想使用 PhpStorm 编辑和调试这个项目。我想我必须在 PhpStorm 中创建一个项目并将我的源代码导
我在Windows 8上安装了wamp,我关闭了Skype端口80,我使用了桌面版本的Skype。现在我看不到我的本地主机或 phpmyadmin。哎呀! Google Chrome 无法连接到本地主
我无法删除 C 盘中的 WAMP/bin/mysql 文件夹,每当我按下删除键时,都会出现一个对话框:该操作无法完成,因为该文件已在另一个程序中打开。关闭文件并重试。注意:我已经卸载了 wamp 服务
我想跟踪执行查询所需的时间我提到了 this post但我没有时间只得到查询。在使用我的 Web 应用程序一段时间后,使用 select、update 和 insert 查询(不是来自控制台,而是真正
很长一段时间以来,我一直在使用 php 5.3.5 安装 wamp现在我正在使用 Symfony2.1,需要国际扩展所以我下载并安装了 php 5.4.6,第一次一切正常 但现在我在一个新项目上,我需
我有一个快速的问题。我是第一次尝试使用 Laravel。为此,我正在使用 Wamp。我不知道这是否重要,但我在这个地址设置了 wamp 的 DocumentRoot : DocumentRoot "C
我刚刚下载并安装了 WAMP,当我打开它时,我收到一个警告框 Aestan Tray Menu has stopped working -"A problem has caused program t
我正在尝试从我的本地网站建立 wamp 连接。我在服务器端使用 Ratchet/Wamp,在客户端使用 autobahn|js。该服务运行良好,我能够连接,正在服务器上触发 onOpen/onClos
我已经在我的 Windows 7 机器上下载并安装了 WAMP 服务器版本 2.1d。当我从开始菜单中选择“启动 WAMP 服务器”时,托盘图标出现,但没有任何功能。当我悬停时,工具提示告诉我 2 个
我以前从未遇到过 Wamp 的问题,找不到问题所在。我的 www 文件夹中有几个项目(运行 Windows 7)。 我的主机文件有一行 127.0.0.1 localhost未注释 当我去http:/
我已经在我的 Windows 8 上安装了 WAMP,现在出于某些原因我需要知道它是 32 位还是 64。浏览并查看“关于”和版本/许可证文件,但找不到任何地方。顺便说一下,它是 WAMPServer
我是一名优秀的程序员,十分优秀!