所以,很多年前我曾经玩过 web 开发,我有点生疏,但没有那么生疏!
前几天我刚刚制作了一个完整的视频游戏页面,使用 PHP 变量将不同的游戏加载到不同大小的 iframe 中。话虽如此,为什么我不能让一个简单的 PHP 命中计数器工作?我已经下载了一个接一个脚本的脚本,CHMOD 将 txt 文件改为 777,整个 9. Chrome 不支持点击计数器之类的吗?似乎即使我访问的通过它们提供点击计数器的网站在他们的演示页面上也不起作用!!交易是什么?我记得几年前,我复制了大约 10 行非常基本的代码,将其保存为 PHP 文件,将它与一个空白的 txt 文件一起上传到服务器,bam,每次都完美运行。发生了什么变化?
这是我正在使用的代码。顺便一提。我尝试将它添加到我的 index.html 中,我也尝试将它用作单独的 php 文件并使用 INCLUDE 调用它,一切。似乎没有任何效果。
<?php
$open = fopen(“hits.txt”, “r+”);
$value = fgets($open);
$close = fclose($open);
$value++;
$open = fopen(“hits.txt”, “w+”);
fwrite($open, $value); // variable is not restated, bug fixed.
$close = fclose($open);
?>
Run Code Online (Sandbox Code Playgroud)
然后在我想要显示结果的地方,我有,
<?php echo $value; ?>
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
您可以将以下内容用作基本命中计数器:
$counter = file_get_contents('./file') + 1;
file_put_contents('./file', $counter);
Run Code Online (Sandbox Code Playgroud)
您可能想要实现某种方法来检查它不仅仅是一个用户刷新页面......一些简单的东西:
session_start();
if(empty($_SESSION['visited'])){
$counter = file_get_contents('./file') + 1;
file_put_contents('./file', $counter);
}
$_SESSION['visited'] = true;
Run Code Online (Sandbox Code Playgroud)
将检查用户是否已经访问过相同的站点,如果已经访问过,则session不会增加该值。
| 归档时间: |
|
| 查看次数: |
11162 次 |
| 最近记录: |