[ Index ]
 

Code source de Cr@wltr@ck 2.2.1

Accédez au Source d'autres logiciels libresSoutenez Angelica Josefina !

title

Body

[fermer]

/include/ -> display-one-page.php (source)

   1  <?php
   2  //----------------------------------------------------------------------

   3  //  CrawlTrack 2.2.1

   4  //----------------------------------------------------------------------

   5  // Crawler Tracker for website

   6  //----------------------------------------------------------------------

   7  // Author: Jean-Denis Brun

   8  //----------------------------------------------------------------------

   9  // Website: www.crawltrack.fr

  10  //----------------------------------------------------------------------

  11  // That script is distributed under GNU GPL license

  12  //----------------------------------------------------------------------

  13  // file: display-one-page.php

  14  //----------------------------------------------------------------------

  15  if (!defined('IN_CRAWLT'))
  16  {
  17      echo"<h1>Hacking attempt !!!!</h1>";
  18      exit();
  19  }
  20  //initialize array

  21  $listcrawler=array();
  22  $nbvisits=array();
  23  $lastdate1=array();
  24  $name=array();
  25  $name2=array();
  26  $nbvisits2=array();
  27  $values=array();
  28  $table=array();
  29  
  30  $crawlencode=urlencode($crawler);
  31  $cachename=$navig.$period.$site.$order.$crawlencode.$firstdayweek.$localday.$graphpos.$crawltlang;
  32  
  33  //start the caching if fopen exist

  34  if(function_exists('fopen'))
  35      {
  36      $ch = new cache($cachename);
  37      }
  38  
  39  //database connection

  40  $connexion = mysql_connect($crawlthost,$crawltuser,$crawltpassword) or die("MySQL connection to database problem");
  41  $selection = mysql_select_db($crawltdb) or die("MySQL database selection problem");
  42  
  43  //include menu

  44  include "include/menumain.php";
  45  include "include/menusite.php";
  46  //order case    

  47  if($order==0)
  48      {    
  49      //case date

  50      $orderby="maxdate DESC";    
  51      }
  52  elseif($order==2 OR $order==1 OR $order==4)
  53      {
  54      //case visits

  55      $orderby="maxvisites DESC";                   
  56      }
  57  elseif($order==3)
  58      {
  59      //case crawlers

  60      $orderby="crawler_name ASC";        
  61      }
  62  //date format

  63  if($period == 0 OR $period >= 1000)
  64      {
  65      $datequery= "DATE_FORMAT(MAX(FROM_UNIXTIME(UNIX_TIMESTAMP(date)-($times*3600))), '%H&nbsp;hr&nbsp;%i&nbsp;mn')";
  66      }
  67  else
  68      {
  69      $datequery= "DATE_FORMAT(MAX(FROM_UNIXTIME(UNIX_TIMESTAMP(date)-($times*3600))), '%d/%m/%Y<br>%H&nbsp;hr&nbsp;%i&nbsp;mn')";    
  70      }
  71  //limite to (value can be modified in the function.php file)

  72  if($displayall=='no')
  73      {
  74      $limitquery='LIMIT '.$rowdisplay;
  75      }
  76  else
  77      {
  78      $limitquery='';
  79      }
  80  //date for the mysql query

  81  if($period>=10)
  82      {
  83      $datetolookfor=" date >'".sql_quote($daterequest)."' 
  84      AND  date <'".sql_quote($daterequest2)."'";    
  85      }
  86  else
  87      {
  88      $datetolookfor=" date >'".sql_quote($daterequest)."'";
  89      }include "include/timecache.php";
  90      
  91   //requete to count the number of page per crawler and to list the crawler and to count the number of visits per crawler and to have the date of last visit for each crawler          

  92  $sqlstats = "SELECT  crawler_name,   COUNT(DISTINCT id_visit) as maxvisites ,
  93  MAX(FROM_UNIXTIME(UNIX_TIMESTAMP(date)-($times*3600), '%Y-%m-%d %H:%i:%s')) as maxdate,    
  94  $datequery 
  95  FROM crawlt_visits, crawlt_crawler, crawlt_pages
  96  WHERE crawlt_visits.crawlt_crawler_id_crawler=crawlt_crawler.id_crawler
  97  AND  crawlt_visits.crawlt_pages_id_page=crawlt_pages.id_page
  98  AND $datetolookfor    
  99  AND crawlt_visits.crawlt_site_id_site='".sql_quote($site)."'
 100  AND crawlt_pages.url_page='".sql_quote($crawler)."'   
 101  GROUP BY crawler_name
 102  ORDER BY $orderby 
 103  $limitquery";
 104          
 105  $requetestats = mysql_query($sqlstats, $connexion) or die("MySQL query error1");
 106  
 107  $nbrresult=mysql_num_rows($requetestats);
 108  if($nbrresult>=1)
 109      {
 110      $onlyarchive=0;
 111      
 112      while ($ligne = mysql_fetch_row($requetestats))                                                                              
 113          {
 114          $nbvisits[$ligne[0]]=$ligne[1];
 115          $lastdatedisplay[$ligne[0]]=$ligne[3];
 116          }    
 117       
 118       //requete to count the total number of  pages viewed ,total number of visits and total number of crawler

 119       
 120       //first we check if that calculation has not already been done

 121      if( isset($_SESSION['nbrtotcrawlers-'.$cachename]) && isset($_SESSION['nbrtotvisits-'.$cachename]))
 122          { 
 123          $nbrtotcrawlers = $_SESSION['nbrtotcrawlers-'.$cachename];
 124          $nbrtotvisits = $_SESSION['nbrtotvisits-'.$cachename]; 
 125          }
 126      else
 127          {    
 128          $sqlstats2 = "SELECT COUNT(DISTINCT crawlt_pages_id_page), COUNT(DISTINCT crawler_name), COUNT(DISTINCT id_visit) FROM crawlt_visits, crawlt_crawler, crawlt_pages
 129          WHERE crawlt_visits.crawlt_crawler_id_crawler=crawlt_crawler.id_crawler
 130          AND  crawlt_visits.crawlt_pages_id_page=crawlt_pages.id_page
 131          AND $datetolookfor         
 132          AND crawlt_visits.crawlt_site_id_site='".sql_quote($site)."'
 133          AND crawlt_pages.url_page='".sql_quote($crawler)."'
 134          "; 
 135          
 136          $requetestats2 = mysql_query($sqlstats2, $connexion) or die("MySQL query error2");
 137          $ligne2 = mysql_fetch_row($requetestats2);
 138          $nbrtotpages=$ligne2[0];
 139          $nbrtotcrawlers=$ligne2[1];
 140          $nbrtotvisits=$ligne2[2];
 141          
 142          $_SESSION['nbrtotcrawlers-'.$cachename] = $nbrtotcrawlers;
 143          $_SESSION['nbrtotvisits-'.$cachename] = $nbrtotvisits;           
 144          }
 145      
 146      //check if there is datas in archive

 147      $usearchive=0;
 148      if($period==3 OR ($period>=200 && $period<300))
 149          {
 150          $beginperiod =  mktime(0,0,0,$monthbeginserver, 1, $yearbeginserver);        
 151          
 152          //data request

 153          $sqlarchive="SELECT mois, nbr_visits, pages_view FROM crawlt_archive";
 154          
 155          $requetearchive = mysql_query($sqlarchive, $connexion) or die("MySQL query error");
 156              
 157          $nbrresult=mysql_num_rows($requetearchive);
 158          if($nbrresult>=1)
 159              {
 160              while ($ligne = mysql_fetch_row($requetearchive))                                                                              
 161                  {
 162                  $sitetodisplay = explode('-',$ligne[0]);
 163                  if($sitetodisplay[1]==$site)
 164                      {
 165                      $data=$sitetodisplay[0];
 166                      $archivdate=explode('/',$data);
 167                      $archivperiod =mktime(0,0,0,$archivdate[0], 1, $archivdate[1]);
 168                      if($archivperiod >=$beginperiod)
 169                          {
 170                          $usearchive=1;
 171                          }
 172  
 173                      }
 174                  }
 175              }
 176                  
 177          }
 178       //query &  treatment to prepare the display of the top 5 and group the other in the 'Other' category in the crawler graph

 179      $sqlstats = "SELECT  crawler_name,  COUNT(DISTINCT id_visit) as maxvisites  FROM crawlt_visits, crawlt_crawler, crawlt_pages
 180      WHERE crawlt_visits.crawlt_crawler_id_crawler=crawlt_crawler.id_crawler 
 181      AND  crawlt_visits.crawlt_pages_id_page=crawlt_pages.id_page 
 182      AND $datetolookfor    
 183      AND crawlt_visits.crawlt_site_id_site='".sql_quote($site)."'
 184      AND crawlt_pages.url_page='".sql_quote($crawler)."'     
 185      GROUP BY crawler_name
 186      ORDER BY maxvisites DESC
 187      LIMIT 5";
 188        
 189       $requetestats = mysql_query($sqlstats, $connexion) or die("MySQL query error"); 
 190       
 191       $totaltop5 = 0;
 192       
 193       while ($ligne = mysql_fetch_row($requetestats))                                                                              
 194          {
 195           if(strlen("$ligne[0]")>15)
 196              {
 197              $values[substr("$ligne[0]",0,15)."..."]=$ligne[1];
 198              }
 199            else
 200              {
 201              $values[$ligne[0]]=$ligne[1];
 202              }
 203           $totaltop5 =  $totaltop5 + $ligne[1];        
 204          }
 205       
 206      If ($totaltop5 < $nbrtotvisits)
 207          {
 208          $values[$language['other']] = ($nbrtotvisits -$totaltop5); 
 209          }
 210      //prepare datas to be transfert to graph file

 211      $datatransferttograph=addslashes(urlencode(serialize($values)));
 212      //insert the values in the graph table  

 213      $graphname="crawler-".$cachename;
 214         
 215      //check if this graph exit already in the table     

 216      $sql = "SELECT name  FROM crawlt_graph
 217                  WHERE name= '".sql_quote($graphname)."'";
 218                  
 219      
 220      $requete = mysql_query($sql, $connexion) or die("MySQL query error");
 221      $nbrresult=mysql_num_rows($requete);
 222      if($nbrresult >=1)
 223          {     
 224          $sql2 ="UPDATE crawlt_graph SET graph_values='".sql_quote($datatransferttograph)."'
 225                    WHERE name= '".sql_quote($graphname)."'";
 226          }
 227      else
 228          {
 229          $sql2 ="INSERT INTO crawlt_graph (name,graph_values) VALUES ( '".sql_quote($graphname)."','".sql_quote($datatransferttograph)."')";        
 230          }    
 231      $requete2 = mysql_query($sql2, $connexion) or die("MySQL query error");      
 232  
 233      //display---------------------------------------------------------------------------------

 234      $crawlerdisplay = crawltcuturl($crawler,'55');
 235      echo"<div class=\"content\">\n";
 236      echo crawltbackforward($crawlerdisplay,$period,$daytodaylocal,$monthtodaylocal,$yeartodaylocal,$daybeginlocal,$monthbeginlocal,$yearbeginlocal,$dayendweek,$monthendweek,$yearendweek,$crawler,$navig,$site,$graphpos);        
 237     
 238         //graph

 239      echo"<div align='center'onmouseover=\"javascript:montre();\">\n";
 240      echo"<img src=\"./graphs/crawler-graph.php?graphname=$graphname\" alt=\"graph\"  width=\"450\" heigth=\"175\"/>\n";
 241      echo"</div>\n";    
 242  
 243      echo"</div>\n";
 244  
 245      echo"<div class='tableau' align='center'>\n";    
 246      echo"<table   cellpadding='0px' cellspacing='0' width='300px'>\n";    
 247      echo"<tr><th class='tableau1'>\n";
 248      echo"".$language['nbr_tot_visits']."\n";
 249      echo"</th>\n";
 250      echo"<th class='tableau2'>\n";
 251      echo"".$language['nbr_tot_crawlers']."\n";
 252      echo"</th></tr>\n";
 253      if($usearchive==0)
 254          {        
 255          echo"<tr><td class='tableau3'>".numbdisp($nbrtotvisits)."</td>\n";
 256          echo"<td class='tableau5'>".numbdisp($nbrtotcrawlers)."</td></tr>\n";    
 257          echo"</table></div><br>\n";    
 258          }
 259      else
 260          {
 261          echo"<tr><td class='tableau3'>".numbdisp($nbrtotvisits)."*</td>\n";
 262          echo"<td class='tableau5'>".numbdisp($nbrtotcrawlers)."*</td></tr>\n";    
 263          echo"</table>\n";
 264          echo"<p>*".$language['use-archive']."</p></div><br>\n";            
 265          } 
 266       if($period != 5)
 267          {                   
 268          //graph

 269          echo"<div class='graphvisits'>\n";    
 270          //mapgraph

 271          include "include/mapgraph.php"; 
 272          echo"<img src=\"./graphs/visit-graph.php?crawltlang=$crawltlang&period=$period&navig=$navig&graphname=$graphname\" USEMAP=\"#visit\" alt=\"graph\" width=\"700\" heigth=\"300\"  border=\"0\"/>\n";
 273          echo"</div>\n";
 274          echo"<div class='imprimgraph'>\n";       
 275          echo"&nbsp;<br><br><br><br><br><br></div>\n";        
 276          }
 277  
 278  
 279      //change text if more than x crawlers    and display limited (value of x can be change in function.php,,it's displaynumber)

 280      if($nbrtotcrawlers>=$rowdisplay && $displayall=='no')
 281          {
 282          echo"<br><h2>";
 283          printf($language['100_visit_per-crawler'],$rowdisplay);
 284          echo"<br>\n";
 285           $crawlencode = urlencode($crawler);
 286          echo"<span class=\"smalltext\"><a href=\"index.php?navig=$navig&period=$period&site=$site&crawler=$crawlencode&order=$order&displayall=yes&graphpos=$graphpos\">".$language['show_all']."</a></span></h2>";
 287             }
 288      else
 289          {
 290          echo"<h2>".$language['visit_per-crawler']."</h2>\n";
 291          }
 292  
 293      echo"<div class='tableau' align='center'>\n";    
 294      echo"<table   cellpadding='0px'; cellspacing='0' width='100%'>\n";
 295      if($order==3)
 296          {
 297          echo"<tr><th class='tableau1'>\n";
 298          echo"<form action=\"index.php\" method=\"POST\" >\n";
 299          echo "<input type=\"hidden\" name ='order' value=\"3\">\n";            
 300          echo "<input type=\"hidden\" name ='period' value=\"$period\">\n";
 301          echo "<input type=\"hidden\" name ='graphpos' value=\"$graphpos\">\n";         
 302          echo "<input type=\"hidden\" name ='navig' value=\"$navig\">\n";
 303          echo "<input type=\"hidden\" name ='crawler' value=\"$crawler\">\n";
 304          echo "<input type=\"hidden\" name ='site' value=\"$site\">\n";        
 305          echo"<input type='submit' class='orderselect' value='".$language['crawler_name']."'>\n";
 306          echo"</form>\n";        
 307          echo"</th>\n";
 308          }
 309      else
 310          {
 311          echo"<tr><th class='tableau1'>\n";
 312          echo"<form action=\"index.php\" method=\"POST\" >\n";
 313          echo "<input type=\"hidden\" name ='order' value=\"3\">\n";            
 314          echo "<input type=\"hidden\" name ='period' value=\"$period\">\n";
 315          echo "<input type=\"hidden\" name ='graphpos' value=\"$graphpos\">\n";         
 316          echo "<input type=\"hidden\" name ='navig' value=\"$navig\">\n";
 317          echo "<input type=\"hidden\" name ='crawler' value=\"$crawler\">\n";
 318          echo "<input type=\"hidden\" name ='site' value=\"$site\">\n";        
 319          echo"<input type='submit' class='order' value='".$language['crawler_name']."'>\n";
 320          echo"</form>\n";        
 321          echo"</th>\n";
 322          }    
 323      if($order==2)
 324              {
 325              echo"<th class='tableau1'>\n";
 326              echo"<form action=\"index.php\" method=\"POST\" >\n";
 327              echo "<input type=\"hidden\" name ='order' value=\"2\">\n";            
 328              echo "<input type=\"hidden\" name ='period' value=\"$period\">\n";
 329              echo "<input type=\"hidden\" name ='graphpos' value=\"$graphpos\">\n";             
 330              echo "<input type=\"hidden\" name ='navig' value=\"$navig\">\n";
 331              echo "<input type=\"hidden\" name ='crawler' value=\"$crawler\">\n";
 332              echo "<input type=\"hidden\" name ='site' value=\"$site\">\n";            
 333              echo"<input type='submit' class='orderselect' value='".$language['nbr_visits']."'>\n";
 334              echo"</form>\n";            
 335              echo"</th>\n";
 336              }
 337          else
 338              {
 339              echo"<th class='tableau1'>\n";
 340              echo"<form action=\"index.php\" method=\"POST\" >\n";
 341              echo "<input type=\"hidden\" name ='order' value=\"2\">\n";            
 342              echo "<input type=\"hidden\" name ='period' value=\"$period\">\n";
 343              echo "<input type=\"hidden\" name ='graphpos' value=\"$graphpos\">\n";             
 344              echo "<input type=\"hidden\" name ='navig' value=\"$navig\">\n";
 345              echo "<input type=\"hidden\" name ='crawler' value=\"$crawler\">\n";
 346              echo "<input type=\"hidden\" name ='site' value=\"$site\">\n";            
 347              echo"<input type='submit' class='order' value='".$language['nbr_visits']."'>\n";
 348              echo"</form>\n";
 349              echo"</th>\n";
 350              }    
 351      
 352      if($order==0)
 353              {
 354              echo"<th class='tableau2'>\n";            
 355              echo"<form action=\"index.php\" method=\"POST\" >\n";
 356              echo "<input type=\"hidden\" name ='order' value=\"0\">\n";            
 357              echo "<input type=\"hidden\" name ='period' value=\"$period\">\n";
 358              echo "<input type=\"hidden\" name ='graphpos' value=\"$graphpos\">\n";             
 359              echo "<input type=\"hidden\" name ='navig' value=\"$navig\">\n";
 360              echo "<input type=\"hidden\" name ='crawler' value=\"$crawler\">\n";
 361              echo "<input type=\"hidden\" name ='site' value=\"$site\">\n";            
 362              echo"<input type='submit' class='orderselect' value='".$language['date_visits']."'>\n";
 363              echo"</form>\n";
 364              echo"</th></tr>\n";
 365              }
 366          else
 367              {
 368              echo"<th class='tableau2'>\n";
 369              echo"<form action=\"index.php\" method=\"POST\" >\n";
 370              echo "<input type=\"hidden\" name ='order' value=\"0\">\n";            
 371              echo "<input type=\"hidden\" name ='period' value=\"$period\">\n";
 372              echo "<input type=\"hidden\" name ='graphpos' value=\"$graphpos\">\n";             
 373              echo "<input type=\"hidden\" name ='navig' value=\"$navig\">\n";
 374              echo "<input type=\"hidden\" name ='crawler' value=\"$crawler\">\n";
 375              echo "<input type=\"hidden\" name ='site' value=\"$site\">\n";            
 376              echo"<input type='submit' class='order' value='".$language['date_visits']."'>\n";
 377              echo"</form>\n";
 378              echo"</th></tr>\n";
 379              }    
 380      
 381      //counter for alternate color lane

 382      $comptligne=2;
 383      
 384      foreach ($nbvisits as $page1 => $value)
 385          {
 386          $page1display=htmlentities($page1);
 387         
 388          if ($comptligne%2 ==0)
 389              {
 390              echo"<tr><td class='tableau3'><a href='index.php?navig=2&amp;period=".$period."&amp;site=".$site."&amp;crawler=".$page1."&amp;graphpos=".$graphpos."'>".$page1display."</a></td>\n";
 391              echo"<td class='tableau3'>".numbdisp($nbvisits[$page1])."</td>\n";
 392              echo"<td class='tableau5'>".$lastdatedisplay[$page1]."</td></tr>\n";
 393              }
 394          else
 395              {
 396              echo"<tr><td class='tableau30'><a href='index.php?navig=2&amp;period=".$period."&amp;site=".$site."&amp;crawler=".$page1."&amp;graphpos=".$graphpos."'>".$page1display."</a></td>\n";
 397              echo"<td class='tableau30'>".numbdisp($nbvisits[$page1])."</td>\n";
 398              echo"<td class='tableau50'>".$lastdatedisplay[$page1]."</td></tr>\n";
 399              }
 400          $comptligne++;                            
 401          }
 402  
 403      echo"</table>\n";
 404      echo"<br>\n";
 405          
 406      }    
 407  else
 408      {
 409      $sqlstats2 = "SELECT * FROM crawlt_pages
 410      WHERE crawlt_pages.url_page='".sql_quote($crawler)."'
 411      ORDER BY url_page ASC";
 412      
 413      $requetestats2 = mysql_query($sqlstats2, $connexion) or die("MySQL query error");
 414          
 415      //mysql connexion close

 416      mysql_close($connexion);
 417          
 418      
 419      $nbrresult2=mysql_num_rows($requetestats2);
 420          if ($nbrresult2==0)
 421              {
 422              echo"<h1>Hacking attempt !!!!</h1>";
 423              exit();
 424              }
 425      
 426      $crawlerdisplay = crawltcuturl($crawler,'55');
 427      echo"<div class=\"content\">\n";
 428      echo"<div align='center'>\n";        
 429      echo crawltbackforward($crawlerdisplay,$period,$daytodaylocal,$monthtodaylocal,$yeartodaylocal,$daybeginlocal,$monthbeginlocal,$yearbeginlocal,$dayendweek,$monthendweek,$yearendweek,$crawler,$navig,$site,$graphpos);                
 430          
 431      echo"<h1>".$language['no_visit']."</h1>\n";
 432      echo"<br>\n";
 433      }
 434  
 435  ?>


Généré le : Thu Sep 6 14:14:11 2007 par Balluche grâce à PHPXref 0.7