HOME    FORUMS    MEMBERS    RECENT POSTS    LOG IN  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 29.01.2009, 07:21
bombeg
Участник форума
Регистрация: 27.10.2008
Сообщений: 244
Провел на форуме:
963613

Репутация: 428
По умолчанию

Цитата:
правда что то в голову не лезет как сделать отбор лишних айпишников
array_unique например.
 
Ответить с цитированием

  #2  
Старый 29.01.2009, 07:23
Nightmarе
Познавший АНТИЧАТ
Регистрация: 29.04.2007
Сообщений: 1,189
Провел на форуме:
5749763

Репутация: 1680


Отправить сообщение для Nightmarе с помощью ICQ
По умолчанию

спс, желательно пример с реализацией...
 
Ответить с цитированием

  #3  
Старый 29.01.2009, 07:43
bombeg
Участник форума
Регистрация: 27.10.2008
Сообщений: 244
Провел на форуме:
963613

Репутация: 428
По умолчанию

ip.php
PHP код:
<?php
header
('Content-type: text/plain;charset=UTF-8');
$log     'log.dat';
$time     time();

$fp fopen($log'a');
fputs($fp"{$_SERVER['REMOTE_ADDR']}:{$time}\n");
fclose($fp);

$ips     file($log);
$print     $time = array();
foreach(
$ips as $ip
{
    list(
$_ip$_time) = explode(':'trim($ip));
    
$print[$_ip] = $_ip;
    
$time[$_ip]  = $_time;
}
$max_time time() - 300;
$print array_reverse($print);
foreach(
$print as $ip)
{
    if(
$time[$ip] > $max_time) echo $ip' посетил страницу в 'date('h:i:s'$time[$ip]), "\n";
}
?>
Посмотри тут http://stas.me/ip.php
log.dat
Код:
127.0.0.1:1234567890
127.0.0.2:1234567890
127.0.0.3:1234567890
127.0.0.4:1234567890
127.0.0.1:1234567890
127.0.0.2:1234567890
127.0.0.4:1234567890
127.0.0.5:1234567890
127.0.0.1:1234567890
127.0.0.5:1234567890
127.0.0.5:1234567890
127.0.0.6:1234567890
127.0.0.8:1234567890
127.0.0.5:1234567890
127.0.0.3:1234567890
127.0.0.2:1234567890
 
Ответить с цитированием

  #4  
Старый 07.05.2009, 20:05
Nightmarе
Познавший АНТИЧАТ
Регистрация: 29.04.2007
Сообщений: 1,189
Провел на форуме:
5749763

Репутация: 1680


Отправить сообщение для Nightmarе с помощью ICQ
По умолчанию

Цитата:
Сообщение от bombeg  
ip.php
PHP код:
<?php
$log     
'log.dat';
$time     time();

$ips     file($log);
$print     $time = array();
foreach(
$ips as $ip
{
    list(
$_ip$_time) = explode(':'trim($ip));
    
$print[$_ip] = $_ip;
    
$time[$_ip]  = $_time;
}
$max_time time() - 300;
$print array_reverse($print);
foreach(
$print as $ip)
{
    if(
$time[$ip] > $max_time) echo $ip' посетил страницу в 'date('h:i:s'$time[$ip]), "\n";
}
?>
Помогите плиз разобраться с кодом, сам к сожалению не могу.
В файле log.dat содержится данные IP:дата
Даный код получает инфу из файла и выводит на экран айпишники + последнюю дату. При этом отсеивает похожие айпи адреса (чтобы одинаковых не выводилось) и выводит только те которые были активны за последние 5 минут (сверяет по дате)

Пример файла log.dat :
127.0.0.1:1234567890
127.0.0.2:1234567890
127.0.0.3:1234567890
127.0.0.4:1234567890
127.0.0.1:1234567890


Теперь-же в файле log.dat добавилось 2 новых параметра, и инфа выглядит так:
127.0.0.1:1234567890:randominfa1:randominfa2
127.0.0.2:1234567890:randominfa1:randominfa2
32.60.32.60:1234567890:randominfa1:randominfa2
127.0.0.4:1234567890:randominfa1:randominfa2
32.60.32.60:1234567890:randominfa1:randominfa2

В данном коде надо подправить вывод 3 и 4 параметров на экран, чтобы они выводились вместе с айпишниками.
Но к сожалению мне не понятно где в этом коде первый параметр, а где второй.

я банально сделал вот такую подправку:
Код:
list($_ip, $_time, $_cid, $_nat) = explode(':::', trim($ip)); 
    $print[$_ip] = $_ip; 
	$print[$_cid] = $_cid;
	$print[$_nat] = $_nat;
    $time[$_ip]  = $_time;
Дальше юзал:
echo $ip.$_nat, ' посетил страницу в ', date('h:i:s', $time[$ip]), "\n";
И это даже на первый взгляд заработало, но как оказалось последние 2 параметра в этом случае он абсолютно рандомно выводит, а надо чтобы выводил параметры пренадлежащие этой лини (ip адресу).

В общем кто сможет, помогите разобраться...
 
Ответить с цитированием

  #5  
Старый 08.05.2009, 01:14
Isis
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме:
16641028

Репутация: 2371


По умолчанию

Цитата:
Сообщение от Nightmarе  
Помогите плиз разобраться с кодом, сам к сожалению не могу.
В файле log.dat содержится данные IP:дата
Даный код получает инфу из файла и выводит на экран айпишники + последнюю дату. При этом отсеивает похожие айпи адреса (чтобы одинаковых не выводилось) и выводит только те которые были активны за последние 5 минут (сверяет по дате)

Пример файла log.dat :
127.0.0.1:1234567890
127.0.0.2:1234567890
127.0.0.3:1234567890
127.0.0.4:1234567890
127.0.0.1:1234567890


Теперь-же в файле log.dat добавилось 2 новых параметра, и инфа выглядит так:
127.0.0.1:1234567890:randominfa1:randominfa2
127.0.0.2:1234567890:randominfa1:randominfa2
32.60.32.60:1234567890:randominfa1:randominfa2
127.0.0.4:1234567890:randominfa1:randominfa2
32.60.32.60:1234567890:randominfa1:randominfa2

В данном коде надо подправить вывод 3 и 4 параметров на экран, чтобы они выводились вместе с айпишниками.
Но к сожалению мне не понятно где в этом коде первый параметр, а где второй.

я банально сделал вот такую подправку:
Код:
list($_ip, $_time, $_cid, $_nat) = explode(':::', trim($ip)); 
    $print[$_ip] = $_ip; 
	$print[$_cid] = $_cid;
	$print[$_nat] = $_nat;
    $time[$_ip]  = $_time;
Дальше юзал:
echo $ip.$_nat, ' посетил страницу в ', date('h:i:s', $time[$ip]), "\n";
И это даже на первый взгляд заработало, но как оказалось последние 2 параметра в этом случае он абсолютно рандомно выводит, а надо чтобы выводил параметры пренадлежащие этой лини (ip адресу).

В общем кто сможет, помогите разобраться...
PHP код:
list($_ip$_time$_rnd1$_rnd2) = explode(':'trim($ip));
    
$print[$_ip] = $_ip;
    
$time[$_ip]  = $_time
    
$print[$_rnd1] = $_rnd1;
    
$print[$_rnd2] = $_rnd2

Последний раз редактировалось Isis; 08.05.2009 в 01:22..
 
Ответить с цитированием

  #6  
Старый 29.01.2009, 07:47
Nightmarе
Познавший АНТИЧАТ
Регистрация: 29.04.2007
Сообщений: 1,189
Провел на форуме:
5749763

Репутация: 1680


Отправить сообщение для Nightmarе с помощью ICQ
По умолчанию

Огромное спасибо!!!!!!!!!!!!!!!

$max_time = time() - 300;
я не знаю что это, но догадываюсь что фильтрация кто был 5 минут назад не более, верно?
 
Ответить с цитированием

  #7  
Старый 29.01.2009, 07:49
bombeg
Участник форума
Регистрация: 27.10.2008
Сообщений: 244
Провел на форуме:
963613

Репутация: 428
По умолчанию

да.
 
Ответить с цитированием

  #8  
Старый 29.01.2009, 22:11
Mixon
Участник форума
Регистрация: 12.03.2008
Сообщений: 254
Провел на форуме:
12333903

Репутация: 238
Отправить сообщение для Mixon с помощью ICQ
По умолчанию

Вопшем проблема с росчётом времени от старта скрипта и до конца,вопшем нужно сделать чтобы отсчитывалось от начала роботы скрипта и до конца с часами,минутами и секундами,вот уже битый час с знакомым сидим,и никак не допрем...как ето сделать?
Просьба тем кто помогеть собрался учесть,что есле брать значение секунд,минут и часов роздельно (каждая в совей переменной) то неполучается изза того что после того как прошла одна минута,то значение секунд станет нолевым,и тогда будет отниматся значение времени того что в начале скрипта было от 0 уже....И есчё,есле брать в одной переменной ЧасМинСек и в конце так же,и отнимать,то тоже не получится потому что секунд и минут максимум 60 же,а не 100... тогда лишних 40 сек получается есле значение больше минуты,плиз,помогите....
 
Ответить с цитированием

  #9  
Старый 29.01.2009, 22:28
vikseriq
Участник форума
Регистрация: 31.07.2008
Сообщений: 207
Провел на форуме:
299231

Репутация: 107
Отправить сообщение для vikseriq с помощью ICQ
По умолчанию

Да придет time() и date() вам в помощь! Пошерудите поиск по мануалам. Так как год нам наф не нужен, лишних проблем не будет.

___
OFFTP:
Педставляю, как вы там уже час думаете - вся комнатушка в дыму, на столе гора окурков, а на монике - только <? ?> =)
 
Ответить с цитированием

  #10  
Старый 29.01.2009, 22:53
ikolla$$
Banned
Регистрация: 06.04.2008
Сообщений: 107
Провел на форуме:
890872

Репутация: 127
Отправить сообщение для ikolla$$ с помощью ICQ
По умолчанию

Цитата:
Сообщение от vikseriq  
Да придет time() и date() вам в помощь! Пошерудите поиск по мануалам. Так как год нам наф не нужен, лишних проблем не будет.

___
OFFTP:
Педставляю, как вы там уже час думаете - вся комнатушка в дыму, на столе гора окурков, а на монике - только <? ?> =)
Тыбы билять заткнул вонялку то,а.
ТЫ головой подумай,что тиме,что дате,ничего не помогает.Как ебе объяснить то...я сам очень долго догонял объяснения автора....в асику.
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[c/c++] Новичкам: задаем вопросы _Great_ С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 5421 21.04.2026 07:37
Интернетчики задали российскому президенту очень странные вопросы podkashey Мировые новости. Обсуждения. 4 07.07.2006 16:53
Вопросы по Ipb 2.0 Voodoo_People Уязвимости CMS / форумов 26 15.02.2005 22:57



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ