
19.03.2005, 15:25
|
|
Постоянный
Регистрация: 02.12.2004
Сообщений: 352
Провел на форуме: 307649
Репутация:
67
|
|
Вот например. После первого захода чел с таким же ip несможет зайти на эту страницу. Но опять же это ненадёжно =)
PHP код:
<?php
$ipLog='ipLogFile.txt'; // лог файл
$timeout='999999999'; // время блокировки по IP (часы)
$goHere='Allowed.html'; // Имя файла в корневой директории
function record($REMOTE_ADDR,$ipLog,$goHere)
{
$log=fopen("$ipLog", "a+");
fputs ($log,$REMOTE_ADDR."][".time()."\n");
fclose($log);
Header ("Location: $goHere"); exit(0);
}
function check($REMOTE_ADDR,$ipLog,$timeout)
{
global $valid; $ip=$REMOTE_ADDR;
$data=file("$ipLog"); $now=time();
foreach ($data as $record)
{
$subdata=explode("][",$record);
if ($now < ($subdata[1]+3600*$timeout) && $ip == $subdata[0])
{
$valid=0; echo "Доступ закрыт. Попробуйте зайти через :) $timeout hours.";
break;
}
}
}
check($REMOTE_ADDR,$ipLog,$timeout);
if ($valid!="0") record($REMOTE_ADDR,$ipLog,$goHere);
?>
|
|
|