<?php
$countfile = 'counter.txt';
$ipfile = 'ip.txt';
function countint(){
$ip = $_SERVER['REMOTE_ADDR'];
global $countfile , $ipfile;
if (!in_array($ip, file($ipfile, FILE_IGNORE_NEW_LINES))) {
$current = (file_exists($countfile)) ? file_get_contents($countfile) : 0;
file_put_contents($ipfile, $ip."\n", FILE_APPEND);
file_put_contents($countfile, ++$current);
}
}
countint();
$value =file_get_contents($countfile);
?>
这就是count.php函数以及两个文件ip.txt和counter.txt
计数未超过2次点击
两次点击后,它停止记录IP地址
答案 0 :(得分:0)
试一试。我添加了elseif
和in_array
条件elseif (in_array...
旁注:unique
点击计数器在1
之后停止是有意义的,否则它不会是唯一的。
如果你想继续计算它们,你可以试一试。如果它没有按预期工作,请告诉我,我会尝试修改它,或者完全删除答案。
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
$countfile = 'counter.txt';
$ipfile = 'ip.txt';
function countint(){
$ip = $_SERVER['REMOTE_ADDR'];
global $countfile , $ipfile;
if (!in_array($ip, file($ipfile, FILE_IGNORE_NEW_LINES))) {
$current = (file_exists($countfile)) ? file_get_contents($countfile) : 0;
file_put_contents($ipfile, $ip."\n", FILE_APPEND);
file_put_contents($countfile, ++$current);
}
elseif (in_array($ip, file($ipfile, FILE_IGNORE_NEW_LINES))) {
$current = (file_exists($countfile)) ? file_get_contents($countfile) : 0;
file_put_contents($ipfile, $ip."\n", FILE_APPEND);
file_put_contents($countfile, ++$current);
}
}
countint();
$value =file_get_contents($countfile);
?>
答案 1 :(得分:0)
必须更改!in_array
<?php
$countfile = 'counter.txt';
$ipfile = 'ip.txt';
function countint(){
$ip = $_SERVER['REMOTE_ADDR'];
global $countfile , $ipfile;
if (in_array($ip, file($ipfile, FILE_IGNORE_NEW_LINES))) {
$current = (file_exists($countfile)) ? file_get_contents($countfile) : 0;
file_put_contents($ipfile, $ip."\n", FILE_APPEND);
file_put_contents($countfile, ++$current);
}
}
countint();
$value =file_get_contents($countfile);
?>
答案 2 :(得分:0)
<?php
$countfile = 'counter.txt';
$ipfile = 'ip.txt';
function countint(){
$ip = $_SERVER['REMOTE_ADDR'];
global $countfile , $ipfile;
if (!in_array($ip, file($ipfile, FILE_IGNORE_NEW_LINES))) {
$current = (file_exists($countfile)) ? file_get_contents($countfile) : 0;
file_put_contents($ipfile, $ip."\n", FILE_APPEND);
file_put_contents($countfile, ++$current);
}
}
countint();
$value =file_get_contents($countfile);
?>
适用于唯一的IP地址计数器.................... 如果您为每个页面视图增加,请使用if else语句尝试上述答案............