Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

29.01.2009, 07:21
|
|
Участник форума
Регистрация: 27.10.2008
Сообщений: 244
Провел на форуме: 963613
Репутация:
428
|
|
правда что то в голову не лезет как сделать отбор лишних айпишников
array_unique например.
|
|
|

29.01.2009, 07:23
|
|
Познавший АНТИЧАТ
Регистрация: 29.04.2007
Сообщений: 1,189
Провел на форуме: 5749763
Репутация:
1680
|
|
спс, желательно пример с реализацией...
|
|
|

29.01.2009, 07:43
|
|
Участник форума
Регистрация: 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
|
|
|

29.01.2009, 07:47
|
|
Познавший АНТИЧАТ
Регистрация: 29.04.2007
Сообщений: 1,189
Провел на форуме: 5749763
Репутация:
1680
|
|
Огромное спасибо!!!!!!!!!!!!!!!
$max_time = time() - 300;
я не знаю что это, но догадываюсь что фильтрация кто был 5 минут назад не более, верно?
|
|
|

29.01.2009, 07:49
|
|
Участник форума
Регистрация: 27.10.2008
Сообщений: 244
Провел на форуме: 963613
Репутация:
428
|
|
да.
|
|
|

29.01.2009, 12:26
|
|
Постоянный
Регистрация: 15.06.2007
Сообщений: 527
Провел на форуме: 1734541
Репутация:
214
|
|
Сообщение от desTiny
почему? просто записывай все запросы к бд в файл. а если нужны только изменения, то только insert, update и тп.
и будет у тебя файл с контентом
PHP код:
12.01.09 21:00 INSERT INTO `TABLE1` VALUES(1, 2, 3)
12.01.09 21:00 UPDATE `TABLE2` SET `COUNT`=`COUNT`+1
Тебе надо всего лишь задать свою mysql_query (назовём её m_query), которая будет делть запрос, а потом записывать его в файл.
Можешь дописать, чтобы после каждого запроса вызывался SELECT, чтобы прочитать получившиеся значения, если нужно.
не не не понимаешь все изменения надо смотреть в вэб интерфейсе....будет таблица вида(время,дата,кто,какую таблицу,какой столбец,что изменилось) +)
|
|
|

29.01.2009, 15:18
|
|
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме: 2769640
Репутация:
1304
|
|
svesve Вам уже предлагали сделать функцию обертку для стандартного mysql_query
PHP код:
function mysql_logquery($query,$link=null)
{
if (!is_null($link) && is_resource($link)) {$tmp=mysql_query($query,$link);}
else {$tmp=mysql_query($query);}
// тут дополнительные запросы для внесения в таблицу лога, например
$tolog="insert into log (`queries`) values '".mysql_real_escape_string($query)."'";
if (!is_null($link) && is_resource($link)) {@mysql_query($tolog,$link);}
else {@mysql_query($tolog);}
return $tmp; //возвращаем результат оригинального запроса
}
Последний раз редактировалось Gifts; 29.01.2009 в 15:23..
|
|
|

29.01.2009, 22:11
|
|
Участник форума
Регистрация: 12.03.2008
Сообщений: 254
Провел на форуме: 12333903
Репутация:
238
|
|
Вопшем проблема с росчётом времени от старта скрипта и до конца,вопшем нужно сделать чтобы отсчитывалось от начала роботы скрипта и до конца с часами,минутами и секундами,вот уже битый час с знакомым сидим,и никак не допрем...как ето сделать?
Просьба тем кто помогеть собрался учесть,что есле брать значение секунд,минут и часов роздельно (каждая в совей переменной) то неполучается изза того что после того как прошла одна минута,то значение секунд станет нолевым,и тогда будет отниматся значение времени того что в начале скрипта было от 0 уже....И есчё,есле брать в одной переменной ЧасМинСек и в конце так же,и отнимать,то тоже не получится потому что секунд и минут максимум 60 же,а не 100... тогда лишних 40 сек получается есле значение больше минуты,плиз,помогите....
|
|
|

29.01.2009, 22:28
|
|
Участник форума
Регистрация: 31.07.2008
Сообщений: 207
Провел на форуме: 299231
Репутация:
107
|
|
Да придет time() и date() вам в помощь! Пошерудите поиск по мануалам. Так как год нам наф не нужен, лишних проблем не будет.
___
OFFTP:
Педставляю, как вы там уже час думаете - вся комнатушка в дыму, на столе гора окурков, а на монике - только <? ?> =)
|
|
|

29.01.2009, 22:51
|
|
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме: 9220514
Репутация:
3338
|
|
2 Mixon:
PHP код:
<?
$start = microtime(true);
While($a<100000000){
$a++;
}
$end = microtime(true);
echo "Time start:" . date('H:i:s',$start)."\n";
echo "Time end:". date('H:i:s',$end)."\n";
$b = round(($end - $start),0);
echo "Execute time: ".$b. " seconds";
?>
|
|
|
|
 |
|
|
Здесь присутствуют: 2 (пользователей: 0 , гостей: 2)
|
|
|
|