Тема: delete
Показать сообщение отдельно

  #3  
Старый 19.03.2005, 15:25
(-=util=-)
Постоянный
Регистрация: 02.12.2004
Сообщений: 352
Провел на форуме:
307649

Репутация: 67
Отправить сообщение для (-=util=-) с помощью ICQ
По умолчанию

Вот например. После первого захода чел с таким же 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); 

?>
 
Ответить с цитированием