Скрипт для выборки из лога строк по запросу.

  • Автор темы Автор темы a531on
  • Дата начала Дата начала

a531on

Guest
Скрипт для выборки из лога строк по запросу.

Подскажите, как сделать выборку строк из лога посещений ФТП по запросу через веб-интерфейс.
Лог выглядит примерно так:
день недели/дата/ИП адрес/путь к файлу
 
Ну примерно так
PHP:
<?php
//<Здесь код для оработки запроса>
echo $result;
?>
 
Re: Скрипт для выборки из лога строк по запросу.

Автор оригинала: a531on
Подскажите, как сделать выборку строк из лога посещений ФТП по запросу через веб-интерфейс.
Лог выглядит примерно так:
день недели/дата/ИП адрес/путь к файлу
Критерии отбора: Дата, IP-адрес
 
Re: Re: Скрипт для выборки из лога строк по запросу.

читаешь лог в массив file, далее проходишься циклом по массиву делишь строку и смотришь дату и ip по желанию explode
все вроде ясно, или готовый код нужен =)
 
Re: Re: Re: Скрипт для выборки из лога строк по запросу.

Автор оригинала: Ринат
читаешь лог в массив file, далее проходишься циклом по массиву делишь строку и смотришь дату и ip по желанию explode
все вроде ясно, или готовый код нужен =)
Дело в том, что я еще учусь, причем сам, до этого ни на чем не программил...
 
ок вот код, но в сл раз почитай ман сначала, ничего сложного нет, постарайся сделать, если что не получается, спроси лучше
PHP:
$handle = "file.log";
$search_date = '12.12.2005';
$new_array = array();
//читаем файл в массив функцией file
if (file ($handle )) {
$log = file($handle);
//проходим по массиву циклом foreach
foreach ($log as $k=>$v) {
	//делим строку , загоняем  в массив
	$part_array = explode('/', $v);
	//проверяем дату - 1 элемент массива
	if ($part_array[1] == $search_date) {
	  $new_array[] = $v;
	}
    }
}
var_dump($new_array);
код примерный, по себя подгонишь, думаю смысл понятен будет
 
Автор оригинала: Ринат
ок вот код, но в сл раз почитай ман сначала, ничего сложного нет, постарайся сделать, если что не получается, спроси лучше
PHP:
$handle = "file.log";
$search_date = '12.12.2005';
$new_array = array();
//читаем файл в массив функцией file
if (file ($handle )) {
$log = file($handle);
//проходим по массиву циклом foreach
foreach ($log as $k=>$v) {
	//делим строку , загоняем  в массив
	$part_array = explode('/', $v);
	//проверяем дату - 1 элемент массива
	if ($part_array[1] == $search_date) {
	  $new_array[] = $v;
	}
    }
}
var_dump($new_array);
код примерный, по себя подгонишь, думаю смысл понятен будет
Спасибо, будем пробовать...
 
<?php

$handle = "file.log";

if (file_exists($handle ))
{
$log = file($handle);
foreach ($log as $k=>$v)
{
$part_array = explode('/', $v);
}
$num = count($part_array);
for($i=0; $i<=$num; $i++)
{
echo $part_array[$i].'<br>';
}
}else{echo "Error";}
?>

Кажись так.
 
Что то не получается:( Файл большой, система при загрузке сценария долго думает, прощу говоря, виснет. Как сделать построчное чтение файла, а не запихивать его в массив целиком?
 
Сверху