【发布时间】:2019-02-15 11:05:00
【问题描述】:
我已将数据库中的所有问题随机列出到一个页面中,我想隐藏所有其他 div 并逐个显示它们。
我尝试在查询中使用 LIMIT 1,但处理后问题会重复显示。
<?php
if (mysqli_connect_errno()) {
echo "Failed to connect: " . mysqli_connect_error();
}
$sql = "SELECT * FROM tbl_questions ORDER BY RAND();";
$result = mysqli_query($conn, $sql);
$questionCount = 1;
while($row = mysqli_fetch_assoc($result)) {
$id = $row['id'];
$question = $row['question'];
$choice1 = $row['choice1'];
$choice2 = $row['choice2'];
$choice3 = $row['choice3'];
$choice4 = $row['choice4'];
$answer = $row['answer'];
echo "<div id='d$id'>";
echo "<h4>" . $questionCount++ . ". ". $question . "</h4>";
echo "<input type='radio' id='c1' name='c$id' value='1' checked />" . "
<label style='font-weight: normal' for='c1'>" . $choice1 . "</label><br/>";
echo "<input type='radio' id='c2' name='c$id' value='2' />" . "<label
style='font-weight: normal' for='c2'>" . $choice2 . "</label><br/>";
echo "<input type='radio' id='c3' name='c$id' value='3' />" . "<label
style='font-weight: normal' for='c3'>" . $choice3 . "</label><br/>";
echo "<input type='radio' id='c4' name='c$id' value='4' />" . "<label
style='font-weight: normal' for='c4'>" . $choice4 . "</label><br/>";
echo "<input type='submit' value='Submit' />";
echo "</div>";
}
【问题讨论】:
-
你想用 jquery/javascript 执行吗?是的,然后提到你的 jquery/javascript 代码..
-
我已经标记了 javascript/jquery,也尝试过,但我无法访问 id 或如何再次调用循环而不重复提出的问题。如果我应该先显示所有内容或一次从数据库中随机选择一个,您有什么建议吗? “管理员”可以添加更多问题,所以它不是固定的。
-
如果您正在处理大数据,请使用 ajax 调用,如果不是,则一次获取所有数据并使用隐藏/显示概念。
标签: javascript php jquery mysqli