Autor Zpráva
Fisak
Profil
Zdravím... chtěl bych na web vložit nějakou aplikaci (v php, sql) která by mi zaznamenávala pohyb jednotlivých IP po webu.. stránka => IP => datum => čas
Nemáte někdo nějaký typ na nějakou takovou aplikaci? Nebo nenapadá Vás jak jednoduše udělat nějakýho takovýho "web špiona"
já bych vymyslel něco jako function webSP() { $ip = $_server[remote_addr]; $time = $date("h:m:s"); $date = date("d.m.y"); $str = $_server[PATH_INFO]; mysql_query("insert into ..."); }
webSP();
ale určitě to při větší návštěvnosti bude strašlivě zpomalovat systém... proto se ptám máte někdo nějaké lepší řešení ??
Marek88
Profil
Fisak:
ale určitě to při větší návštěvnosti bude strašlivě zpomalovat systém
Ne, nebude...
Fisak
Profil
Marek88:
proč mylíš??
Marek88
Profil
Fisak:
Protože web s vyšší návštěvností bude víc zatěžován vypisováním obsahu, kterého je pak většinou hodně a navíc se vytahuje z více tabulek.

Navíc se to v takhle prostě dělá. Nechce se mi to víc rozepisovat.
Fisak
Profil
Marek88:
dobře dobře.. a nemáš ještě nějaký nápad jak to vylepšit, rozšířit, upravit ??
Marek88
Profil
Fisak:
Poradím ti jen, abys čas ukládal jako čas a v žádném případě ne jako string. Zbytek hledej na netu, zkoušej a uč se. Možná ti tu někdo napíše návod, který by se dal nazvat: "Jak udělat dobrou statistiku krok za krokem". Já to ale nebudu.
Fisak
Profil
ještě dotaz.. je lepší to zapisovat do DB nebo do souboru ??
Marek88
Profil
[#7] Fisak
I když to tak nevypadá, tak tento dotaz je položen velmi špatně. Nejde přece jen o to zapisování. Ty data budeš chtít taky někdy použít (najít, filtrovat, seřadit,...). Na to je vždy lepší použít databázi (lepší ve smyslu "jednodušší na použití").
Ugo
Profil
dvě věci jsou jisté
1. zdržovat to bude - i 1ms navíc ke 100ms je zdržení
2. s jedním řádkem si asi nevystačíš, jestliže chceš sledovat pohyb tak toho potřebuješ rapidně víc, asi bych si raději vystačil s GA :)
Fisak
Profil
ještě rada :-) mam to udělat tak že mi ten průzkumník bude zapisovat všechno ?? udělal sem takovouto fci:
function WebSpacer() {
$fp = fopen ("_plugins/usefull_plugins/web_spacer/web_spacer_data.cgi", "w");
fwrite ($fp, $_SERVER['REMOTE_ADDR']." ".date("H:i:s - d.m.Y")." ".$_SERVER['PHP_SELF']." ".$_SERVER['HTTP_REFERER']."<br>");
fclose ($fp);
}
a právě mam to nechat aby to prozkoumávalo celou stránku nebo to dát do každý stránky?? tak aby třeba v adminovi to nebylo atd ?? nebo je lepší to nechat všude ??


ještě předělávka..
<?php
function WebSpacer() {
static $web_spacer = false; 
if($web_spacer === false) { file_put_contents("_plugins/usefull_plugins/web_spacer/web_spacer_data.cgi", $_SERVER['REMOTE_ADDR']." | ".date("H:i:s - d.m.Y")." | ".$_SERVER['REQUEST_URI']." | ".$_SERVER['HTTP_REFERER']."<br>"."\r\n".file_get_contents("_plugins/usefull_plugins/web_spacer/web_spacer_data.cgi")); }
}
//zvolání web spacera
WebSpacer();
?>
nebude to zpomalovat systém ?? jelikož když se mi bude furt načítat obsah toho web_spacer_data.cgi a najednou už tam bude např. 100 000 řádků tak to zpomalý že ?? a právě nevím jestli se ten obsah tam vůbec bude načítat...
SeparateSK
Profil
Ak chces zabranit masivnemu spomalovaniu , pouzi tento skript, ktory limituje velkost suboru web_spacer_data.cgi , ak je väcsi ako X bajtov - ktore si nastavis, tak vytvori dalsi - web_spacer_data2.cgi ... potom ..data3.cgi...
V tomto scriptne som limit nastavil na 256kB (262144 bajtov)
<?php
function WebSpacer() {
$p=0;
static $web_spacer = false; 
if($web_spacer === false) { 
    $f=fopen("p.txt","r");
    $p=fgets($f);
    fclose($f);
    if(file_exists("_plugins/usefull_plugins/web_spacer/web_spacer_data{$p}.cgi")&&filesize("_plugins/usefull_plugins/web_spacer/web_spacer_data{$p}.cgi")>262144) { $p+=1;
        $f=fopen("p.txt","w");
        fputs($f,$p);
        fclose($f);
        $f=fopen("_plugins/usefull_plugins/web_spacer/web_spacer_data{$p}.cgi","w");
        fputs($f,"");
        fclose($f);
    } 
else{
 if(!file_exists("_plugins/usefull_plugins/web_spacer/web_spacer_data{$p}.cgi")){
        $f=fopen("_plugins/usefull_plugins/web_spacer/web_spacer_data{$p}.cgi","w");
        fputs($f,"");
        fclose($f);
 }
}
    file_put_contents("_plugins/usefull_plugins/web_spacer/web_spacer_data{$p}.cgi", $_SERVER['REMOTE_ADDR']." | ".date("H:i:s - d.m.Y")." | ".$_SERVER['REQUEST_URI']." | ".$_SERVER['HTTP_REFERER']."<br>"."\r\n".file_get_contents("_plugins/usefull_plugins/web_spacer/web_spacer_data{$p}.cgi")); }
}
//zvolání web spacera
WebSpacer();
?>
vytvor subor p.txt a napis donho 1 alebo 0 alebo hocijake ine cislo
je to trosku dlhsie ale aspon to nebude vypisovat errory ako subor neexistuje :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0