Просмотр файла mpanel/searchbots.php

Размер файла: 7.06Kb
<?php
require_once"../template/start.php";
require_once"../template/regglobals.php";
require_once"../template/config.php";
require_once"../template/functions.php";
require_once"../template/antidos.php";
require_once"../template/cookies.php";
require_once"../template/gzip.php";
require_once"../template/header.php";
require_once"../template/referer.php";
include_once"../themes/$config_themes/index.php";

## Переменные с файлами
$logfile = '../local/botlogs.dat';
$botfile = '../local/bots.dat';

## Если файлов не существует, создаём их.
if(!file_exists($logfile)){$filenew=fopen($logfile,'a');fclose($filenew);}
if(!file_exists($botfile)){$filenew=fopen($botfile,'a');fclose($filenew);}

$text = file("../local/profil/$log.prof");
if ($text!=""){
$udata = explode(":||:",$text[0]);
$provlog=trim($udata[0]);
$provpar=trim($udata[1]);
$dostup=trim($udata[7]);}

$time=time();

if ($_SESSION['log']!="" && md5($_SESSION['par'])!="" && md5($_SESSION['par'])==$provpar && $_SESSION['log']==$provlog ) {
if ($dostup==101 || $dostup==102 || $dostup==103 || $dostup==105){

echo'<img src="../images/img/bsearch.gif" alt=""> <b>Логи поисковых роботов</b><br><br>';

if($udata[10]>0){
echo'<img src="../images/img/mail.gif" alt=""> <b><a href="../pages/privat.php?'.SID.'"><font color="red">Приватное сообщение! ('.$udata[10].')</font></a></b><br>';}

switch ($_GET['cat'])
{
 default:
  echo "<img src=\"../images/img/stat.gif\" alt=\"\"> <a href=\"searchbots.php?cat=view&amp;".SID."\">Просмотреть логи</a><br />\n";
  echo "<img src=\"../images/img/error.gif\" alt=\"\"> <a href=\"searchbots.php?cat=delete&amp;".SID."\">Очистить логи</a><br />\n";
  echo "<img src=\"../images/img/wel.gif\" alt=\"\"> <a href=\"searchbots.php?cat=update&amp;".SID."\">Обновить базу данных роботов</a><hr />\n";
 break;
 case "delete":
 echo "<form action=\"searchbots.php?cat=deleteok&amp;".SID."\" method=\"POST\">\n";
echo "  <label for=\"checkbox\">Вы уверены, что хотите очистить логи поисковиков? <input name=\"yes\" id=\"checkbox\" type=\"checkbox\" value=\"true\"></label><br />\n";
echo "  <input type=\"submit\" value=\"ОК\">\n";
echo " </form>\n";
echo'<hr><img src="../images/img/panel.gif" alt=""> <a href="searchbots.php?'.SID.'">&laquo; SearchBotsLogging</a><br>';
 break;
 case "deleteok":
  if(isset($_POST['yes']) && $_POST['yes']=="true")
  {
   if(file_exists($logfile))
   {
    if(is_writable($logfile))
    {
     $fp = fopen ($logfile, "w");
     fclose ($fp);
      echo"Логи успешно очищены.";
    }else{echo"Ошибка: логи не могут быть очищены, так как chmod файла не равен 666";}
   }else{echo"Ошибка: логи не могут быть очищены, так как файла логов (".$logfile.") не существует. Создайте его.";}
  }else{echo"Ошибка: логи не могут быть очищены, так как Вы не подтвердили их очистку.";}
echo'<hr><img src="../images/img/panel.gif" alt=""> <a href="searchbots.php?'.SID.'">&laquo; SearchBotsLogging</a><br>';
 break;
 case "update":
$oldsize=filesize($botfile);
/* Пока убрал проверку на записываемость папки local, ибо чет не работает.
 if(is_writable(BASEDIR."local")==true)
 {*/
  if(is_writable($botfile))
  {
   if(copy("http://wapgarant.ru/scripts/zBotLogging/bots.dat",$botfile.".new")==true)
 {
  $newsize=filesize($botfile.".new");
  if($newsize==$oldsize)
  {
   $fp = fopen ($botfile.".new", "r");
   $bytes = filesize($botfile.".new");
   $buffer = fread($fp, $bytes);
   fclose ($fp);

   $fp = fopen ($botfile, "w+");
   fwrite ($fp, $buffer);
   fclose ($fp);

   unlink($botfile.".new");

   echo "Ура! Базы уже самые новые!\n";
  }
  else
  {
   if($newsize>$oldsize)
   {
   $fp = fopen ($botfile.".new", "r");
   $bytes = filesize($botfile.".new");
   $buffer = fread($fp, $bytes);
   fclose ($fp);

   $fp = fopen ($botfile, "w+");
   fwrite ($fp, $buffer);
   fclose ($fp);

   unlink($botfile.".new");
    echo "Базы успешно обновлены!\n";
   }
  }

 }else{echo "Ой! У вас запрещены подключения к внешним серверам!<br />Попробуйте обновить скрипт вручную, скопировав файл <a href=\"http://wapgarant.ru/scripts/zBotLogging/bots.dat\">http://wapgarant.ru/scripts/zBotLogging/bots.dat</a> в папку /local/\n";}
  }else{echo "Ой! Запрещена запись в файл ".$botfile." . Поставьте chmod 666 на него и повторите операцию.\n";}
echo'<hr><img src="../images/img/panel.gif" alt=""> <a href="searchbots.php?'.SID.'">&laquo; SearchBotsLogging</a><br>';
 break;
 case "view":
$return=$udata[25];
$data=file($logfile);
$maxmsg = count($data);
rsort($data);
echo "<table style=\"border-collapse:collapse;\" width=\"100%\" border=\"1\" cellspacing=\"0\" cellpadding=\"3\">\n";
echo "\n";
echo "<tr><th>Дата/время</th><th>UserAgent робота</th><th>Описание робота</th><th>IP бота</th><th>Страница</th></tr>\n";
echo"<br />Роботы посетили ".$maxmsg." страниц вашего сайта.<br />\n";

if($maxmsg!=0)
{
 $frstmsg = $_REQUEST['p'] * $return;
 $lastmsg = $_REQUEST['p'] * $return + $return;
 if ($lastmsg > $maxmsg)
 {
  $lastmsg=$maxmsg;
 }
  for($u=$frstmsg; $u<$lastmsg; $u++)
  {
   $entry = explode("||",$data[$u]);
   echo"<tr><td width=\"10%\">".date("d.m H:i:s",$entry[0])."</td><td>".$entry[1]."</td><td>".$entry[2]."</td><td><a target=\"_blank\" href=\"http://www.ripe.net/perl/whois?searchtext=".$entry[3]."\">".$entry[3]."</a></td><td width=\"100%\"><a target=\"_blank\" href=\"".$entry[4]."\">".$entry[4]."</a></td></tr>";
  }

 echo "</table>\n";
 $t_links=($maxmsg-0.1)/$return;
 echo "Страницы: \n";
 for($j=0;$j<=$t_links;$j++)
 {
  $n=$j+1;
  if($j!=$_REQUEST['p'])
  {
   echo"<a href=\"".getenv('PHP_SELF')."?cat=view&amp;p=".$j."\">$n</a> ";
  }
  else{echo"<b>(".$n.")</b> ";}
 }
}else{echo "<tr><td>Чувак,</td><td>роботы тебя</td><td>пока</td><td>ещё не</td><td>посещали.</td></tr></table><br />\n";}
echo'<hr><img src="../images/img/panel.gif" alt=""> <a href="searchbots.php?'.SID.'">&laquo; SearchBotsLogging</a><br>';
 break;
}

echo'<img src="../images/img/panel.gif" alt=""> <a href="index.php?'.SID.'">В админку</a><br>';

echo'<img src="../images/img/panel.gif" alt=""> <a href="index.php?'.SID.'">В админку</a><br>';
echo'<img src="../images/img/homepage.gif" alt=""> <a href="../index.php?'.SID.'">На главную</a><br>';
} else {header ("Location: ../index.php?error&".SID);}
} else {header ("Location: ../index.php?error&".SID);}

include_once"../themes/$config_themes/foot.php";
?>