我对 PHP 相当陌生,但设法设置了一个脚本,该脚本仅显示用户每次单击按钮时单击按钮的次数。
这是PHP:
<?php
$f = fopen('counter.txt', 'r+');
flock($f, LOCK_EX);
$total = (int) fread($f, max(1, filesize('counter.txt')));
if (isset($_POST['submit'])) {
rewind($f);
fwrite($f, ++$total);
}
fclose($f);
?>
这是HTML:
<form action='' method="post">
<input type="submit" name="submit" value="click" />
</form>
This button has been clicked <?php echo $total; ?> times.
计数器工作正常,但我希望你们能帮助我解决三个问题:
每次重新加载页面时,计数器都会增加。我只希望在单击按钮时计数器增加。有没有办法解决这个问题?
每次我刷新页面时,Firefox 都会要求我确认是否要重新加载页面。我知道我的浏览器设置中有一个选项可以防止这种情况,但想知道是否有办法改进我的 php,以便用户也不会出现此消息。
如果您单击该按钮几次,然后尝试使用“后退”按钮,它会引导您完成之前的每一次单击。同样,有没有办法修复我的代码,使其不会这样做,而是转到上一页?
非常感谢!!