Identyfikacja innych botów

Mam taki skrypt:

<?php

if (eregi("googlebot",$_SERVER["HTTP_USER_AGENT"]))

{


$data = sprintf("%02d.%02d.%04d-%02d:%02d:%02d",

  date("d"), date("m"), date("Y"),date("H"), date("i"), date("s"));


$plik=fopen("google.txt","a");

if(!$plik)


{echo"bł±d zapisu do pliku!";

exit;

}


fputs($plik,"$data\n\n");

fclose($plik);


}

?>

Jak do niego dopisać identyfikację innych botów (nawet nei wiem jak się nawywają) i dodać taką opcja aby każdy bot był zapisywany w odpowiednim miejscu, np.

Google:

26-07-2006, 15.00

i tak inne boty i żeby dodawał do tych kolumn…

Macie jakiś pomysł :?:

Witam,

zerknij tutaj, może Ci się przyda:

http://forum.dobreprogramy.pl/viewtopic.php?t=85710

No tak tylko ja bym chciał ten zmodyfikować żęby po prostu dopisywał :stuck_out_tongue:

A możę to wkomponować w mój skrytp:

<?php

$boty_tab = Array('MetaTagRobot', 'google', 'msnbot', 'szukacz.pl', 'picsearch.com', 'deltaSCAN', 'findlinks', 'GigaBot', 'NetSprint', 'Yahoo!', 'NetExperts', 'Java');

     foreach($boty_tab as $bot){

       if(stristr($_SERVER['HTTP_USER_AGENT'], $bot) !== FALSE){

         echo "Odwiedził mnie bot $bot";

       }

     }

?>

Tylko jak :frowning:

<?php 

$boty_tab = Array('MetaTagRobot', 'google', 'msnbot', 'szukacz.pl', 'picsearch.com', 'deltaSCAN', 'findlinks', 'GigaBot', 'NetSprint', 'Yahoo!', 'NetExperts', 'Java');

     foreach($boty_tab as $bot){

       if(stristr($_SERVER['HTTP_USER_AGENT'], $bot) !== FALSE)

{


$data = sprintf("%02d.%02d.%04d-%02d:%02d:%02d",

  date("d"), date("m"), date("Y"),date("H"), date("i"), date("s"));


$plik=fopen("google.txt","a");

if(!$plik)


{echo"bł±d zapisu do pliku!";

exit;

}


fputs($plik,"$data\n\n");

fclose($plik);


}

?>

Zadziała coś takiego :?:

Witam,

Spróbuj :wink: .

Ja bym dodał jeszcze coś takiego, aby nowe wizyty botów zapisywać na początku pliku.

$filename = "nazwa_pliku.txt";

//tu czytamy dane z pliku

           $file = fopen($filename , "r");

           flock($file, 1);

//zapisujemy do zmiennej $zawartosc

           $zawartosc = fread($file, filesize($filename));

           flock($file, 3);

           fclose($file);

//tu otwieramy ten sam plik

           $file66 = fopen($filename , "w+");

           flock($file66, 2);

//ale zapisujemy najpierw $data, a potem $zawartosc

           fwrite($file66, "$data \n$zawartosc");

           flock($file66, 3);

           fclose($file66);

Dobra a teraz to całkiem miałem wizje w nocy jak spać eni mogłem… Pomóżcie spełnić ją :slight_smile:

Mamy sobie ten mój skrypt który ma zapisaną definicje botów i identyfikuje je.

Teraz po identyfikacji ma odnaleźć plik o nazwie bota czyli dla przykładu: Bot Google —> plik google.txt, bot szulasz.pl —> plik szukacz.pl.txt

I zapisuje tam date i czas.

Jak to zrobić :?:

Może… :wink:

<?php

$boty_tab = Array('MetaTagRobot', 'google', 'msnbot', 'szukacz.pl', 'picsearch.com', 'deltaSCAN', 'findlinks', 'GigaBot', 'NetSprint', 'Yahoo!', 'NetExperts', 'Java', 'Onet');

     foreach($boty_tab as $bot){

       if(stristr($_SERVER['HTTP_USER_AGENT'], $bot) !== FALSE)

{


$data = sprintf("%02d.%02d.%04d-%02d:%02d:%02d",

  date("d"), date("m"), date("Y"),date("H"), date("i"), date("s"));


$plik=fopen($bot.".txt","a"); 

if(!$plik)


{echo"bł±d zapisu do pliku!";

exit;

}


fputs($plik,"$data\n\n");

fclose($plik);


}

?>

Czyli całość ma wyglądać tak :?:

Przepraszam że ciągle pytam ale nei mam kogo a dopiero się troszke ucze tego :frowning: