PHP: function GetRealIp() { if (!empty($_SERVER['HTTP_CLIENT_IP'])) { $ip=$_SERVER['HTTP_CLIENT_IP']; } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { $ip=$_SERVER['HTTP_X_FORWARDED_FOR']; } else { $ip=$_SERVER['REMOTE_ADDR']; } return $ip; } $ip = getRealIp(); $ips = file("ip.txt"); $i=0; $j=0; foreach ($ips as $value) { if ($value == $ip) { $i=$i+1; } } echo $i; вообще мне нужно сделать так: пользователь зашел на страницу, его айпи занесся в переменную. затем проверяется сколько раз его айпи повторяется в документе (ip.txt). если меньше 5 то его айпи заносится в этот документ, и он пропускается к дальнейшим действиям на сайте. в обратном случае выдается сообщение что вы привысили лимит. знаю как сделать все это, кроме этого счетчика. как узнать сколько раз айпи пользователя повторяется в документе? (в одной строке один айпи) этот скрипт работает не корректно, он считает только последнюю строку в документе и выдает либо 1 либо 0. если в последней строке мой айпи то 1 , если что-то другое то 0. а повторения в середине документа он не считает помогите исправить этот скрипт или предложите альтернативу. пожааалуйста.
$ips = file_get_contents("ip.txt"); $ips = explode("\r\n",$ips); $i=0; foreach ($ips as $value) { if ( strcasecmp($value,$ip) == 0 ) { $i++; } } echo $i;