Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
my $pass = "";
sub push_to_db
{
# Подготовка соединения
my $dbh=DBI->connect("DBI:Pg:dbname=$base",
"$user", "$pass",
{PrintError => 0, RaiseError => 0}
) or return 2;
# Подготовка запроса
my $ins = $dbh->prepare(q{
INSERT INTO gdklog (d_time , station, line, t_call, c_number)
VALUES (?, ?, ?, ?, ?)
});
# Перебираем в цикле все сохраненные строки
foreach my $log (@log)
{
# Разбираем строку
(undef, $station, $line, $t_call, $date, $time, $c_number) = split (/s+/, $log);
if (length ($t_call) < 6)
{
$t_call="00:$t_call";
}
$d_time = "$date $time";
# Выполняем INSERT
$ins->execute($d_time, $station, $line, $t_call, $c_number)
or return 2;
}
# Очистим массив
undef (@log);
$dbh->disconnect();
return 0;
}
Кроме этого, мне нужно было, чтобы программа могла работать в режиме демона:
# В режиме демона в этот файл перенаправляем все сообщения об ошибках
my $err_file = "/var/gdklog/gdklogd.err";
# PID-файл
my $pid_file = "/var/gdklog/gdklogd.pid";
sub begin_daemon
{
# Делаем fork
my $pid = fork;