我正在尝试构建一个简单的在线测验。它不需要用户输入。它所做的只是从 mysql 数据库名称列表中随机选择一个条目,查找该名称的图像,然后显示该图像。我遇到的问题是我想创建一个“下一步”按钮,它将刷新 mysql 查询并发布新的图像/问题。这就是我目前所拥有的,虽然它确实刷新了页面,但它没有得到新的结果。我在这里缺少什么?缓存? cookies ?任何想法都非常感激。
<?php
$quiz_select = "SELECT * FROM wp_quiz ORDER BY RAND() LIMIT 1; ";
$result_select = mysql_query($quiz_select) or die(mysql_error());
while($row = mysql_fetch_array($result_select)) {
$name = stripslashes($row['comname']);
$sciname = stripslashes($row['sciname']);
$code = stripslashes($row['code']);
$image = stripslashes($row['image']);
}
$image = preg_replace('/\s+/', '', $image);
echo "<div style='margin-left: auto;margin-right: auto; width: 500px'><img style='max-width:500px;' src='http://$image.jpg.to'></div>";
?>
<form>
<input type="button" onClick="history.go(0)" value="Next">
</form>
最佳答案
通过从历史记录中重新加载,您可能会重新加载浏览器缓存的页面版本,该版本始终是相同的。您只需再次加载页面即可。
(即,将表单按钮更改为标准 html 按钮,而不是触发 javascript 历史记录)。
<form action="targetpage.php" method="post">
<input type="submit" value="Next">
</form>
PS,按 RAND() 排序并不是进行选择的好方法:http://www.webtrenches.com/post.cfm/avoid-rand-in-mysql
关于php - 选择刷新 php mysql 上的新查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17551355/