【发布时间】:2012-10-12 21:08:13
【问题描述】:
我有这个:
<?php
if(isset($_POST['submit'])){
$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);
}
?>
它可以在 txt 文件中使用。它正确计算了点击次数。但是这个:
Times submited <?php echo $total; ?>.
在我有表单的 index.html 文件中不起作用。请问你能帮忙吗?
这是我文件的行:
- 表单 (index.html)
- .php 文件
- header("位置:thankyou.php")
- 然后返回 index.html
【问题讨论】:
-
在我看来,我们需要更多的 HTML 来提供帮助。
-
PHP 代码(通常)不会在
.html文件中运行。并且$total等变量不会在不同的页面请求之间持续存在;需要再次读取计数器文件。 -
您可以将 $total 存储在 cookie 或会话变量中以启用任何页面的访问。也使用 .php 让它工作
-
是的。我认为这可能是代码内或跨请求(使用会话)的范围界定问题。如果您不这样做,请声明一个全局 $total。
-
将 index.html 移动到 index.php。然后你就可以做你需要的了。