我正在使用一个代码,该代码使用ORDER BY RAND()LIMIT 1从数据库生成一个随机单词(不是很多行,所以运行正常)。是否有可能,使用php,只允许用户刷新页面几次(通过手动点击刷新或使用表单['submit']按钮),然后停止随机函数,使其设置为最后一个值?
我知道我可以使用会话/ cookie计算页面访问/刷新次数,但我不知道如何停止代码运行。
答案 0 :(得分:0)
IF语句就足够了
IF(pagecount< 3)
{
Execute code
}
ELSE
{
Don't execute code
}
答案 1 :(得分:0)
几乎没有答案,但评论的时间太长了 - 你到底得到的是什么?
<?php session_start();
// ...
if(!isset($_SESSION['myCounter']))
$_SESSION['myCounter'] = 0;
if($_SESSION['myCounter'] < $myLimit){
$_SESSION['myCounter']++;
// Do random DB query
$_SESSION['lastResult'] = $dbResult;
}
// Do something with result
echo $_SESSION['lastResult'];
// ...
manual pages ...
上甚至有例子答案 2 :(得分:0)
使用会话$_SESSION['runRand'] = 1;
仅当上述变量设置为 1 时,才运行随机字db代码。
因此,当用户第一次运行此脚本时......
将从DB生成的第一个随机单词存储到会话变量中,如$_SESSION['firstRand']=$randNum;
因此,当用户单击刷新按钮或提交时,PHP脚本将再次加载并生成一个新的随机单词,现在不存储该单词,只需将其与会话变量进行比较即可$_SESSION['firstRand'];
当用户继续点击刷新并再次执行相同的过程时,随机单词将与$ _SESSION ['firstRand']匹配; ,那时设置会话变量 $_SESSION['runRand'] = 0;
。现在,即使用户按下刷新按钮,也不会生成来自DB的随机代码。