我只是在学习for循环之类的东西,并成功地解决了一个FizzBuzz问题,我的当前代码如下所示:
<?php
for ($i = 1; $i <= 100; $i++) {
if ($i % 15 == 0) {
echo 'FizzBuzz<br>';
} elseif ($i % 3 == 0) {
echo 'Fizz<br>';
} elseif ($i % 5 == 0) {
echo 'Buzz<br>';
} else {
echo $i . '<br>';
}
}
?>现在,我只是想知道,如果我们有一个MySQL表,其中包含100个行,其中有1-100个数字。
CREATE TABLE numbers_from_one_to_hundred (
id INT(11) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
numbers INT(11) NOT NULL
);现在,我想用PHP和与FizzBuzz链接的MySQLi来解决numbers_from_one_to_hundred问题。
顺便说一句,我没有使用任何准备好的声明和东西,因为我对它们很在行,这只是一个宠物项目,所以没有安全方面的担忧。
所以,我做了这样的事情,但最终没有起作用:
$query = "SELECT * FROM `numbers_from_one_to_hundred`";
$results = mysqli_query($con, $query);
while ($row = mysqli_fetch_array($results)) {
$numbers = $row['numbers'];
for ($i = 1; $i <= $numbers; $i++) {
if ($i % 15 == 0) {
echo 'FizzBuzz<br>';
} elseif ($i % 3 == 0) {
echo 'Fizz<br>';
} elseif ($i % 5 == 0) {
echo 'Buzz<br>';
} else {
echo $i . '<br>';
}
}
}有人能解释一下这是怎么回事吗?它实际上没有输出任何东西,但是当我尝试使用print_r的结果时,它似乎确实给出了结果,所以我的逻辑可能出了问题,我是否完全做错了?有人能向我解释一下该怎么做吗?
发布于 2020-12-31 07:41:05
将order by numbers添加到查询中,以便返回排序的行。
https://stackoverflow.com/questions/65517852
复制相似问题