Autor Zpráva
pito
Profil
Zdravím,
Nějak to nechápu. Mám v administraci statistiku. Veškeré přístupy a info od návštěvníku se mi ukládá do databáze. Předtím jsem používal google analytics a když jsem udělal tu statistiku tak jsem vložil ručně do databáze údaje z google analytics př. odkud lidi přišli, počet návštěv atd. ale jak to vložím tak se mi to za chvílí s DB smaže. Nechápu jak to! Přemýšlel jsem jestli to nemůže mazat ten můj kód který započítává ty přístupy do DB.

Děkuji předem za pomoc
jenikkozak
Profil
pito:
Přemýšlel jsem jestli to nemůže mazat ten můj kód který započítává ty přístupy do DB.
Vůbec by nebyl špatný nápad sem ten kód přidat.
pito
Profil
Je docela dlouhý tak jsem vybral jen ty části které si myslím, že to dělají.

// delete old page,referrer,language and keywords
$old_day=date("Y.m.d",mktime(0, 0, 0, date("n"), date("j")-$oldentries, date("Y"))); // delete older than $oldentries(config.php) days
$delete=mysql_query("delete from ".$db_prefix."Page where day<='$old_day'");
$delete=mysql_query("delete from ".$db_prefix."Referer where day<='$old_day'");
$delete=mysql_query("delete from ".$db_prefix."Keyword where day<='$old_day'");
$delete=mysql_query("delete from ".$db_prefix."Language where day<='$old_day'");
if (!$delete) {echo"Es ist ein Fehler aufgetreten, m÷glicherweise ist die Tabelle nicht angelegt."; exit;}

Dám jsem třeba s referrer tedy odkud návštěvníci přišli.

// Referer
if(stristr($server_host, $referer_host) === FALSE AND $referer_host<>"" AND $newuser == 1) {
    $ergebnis = mysql_query("SELECT id from ".$db_prefix."Referer WHERE referer='$referer_host' AND day='$day'");
    if (!$ergebnis) {echo"Es ist ein Fehler aufgetreten, m÷glicherweise ist die Tabelle nicht angelegt."; exit;}
    if (mysql_num_rows($ergebnis)==0)
        {
        mysql_query("insert into ".$db_prefix."Referer (day, referer, view) values ('$day', '$referer_host', '1')");
        }
    else
        { 
        $refererid=mysql_result($ergebnis,0,0);
        mysql_query("update ".$db_prefix."Referer set view=view+1 where id='$refererid'");
        }
    }
Kajman
Profil
Jakého typu jsou sloupce day? Na co je nastavujete u vkládaných dat? Na kolik máte nastavenou tu proměnnou $oldentries určující maximální stáří logů?
pito
Profil
Kajman:
U sloupce je nastaveno varchar(10) tak to bylo napsané u toho kódu.
Našel jsem to na jedné stránce phpkode.com

Jinak tady je ten celý kód http://www.phpkode.com/source/s/chilistats/chilistats/counter.php potom jsou ještě další
ale to není asi třeba to jsou už jen výpisy z databáze.

Potom ještě je tady sql tabulky tedy instalace tabulek do DB.
http://www.phpkode.com/source/s/chilistats/chilistats/install.php
Kajman_
Profil *
pito:
Zatím víme, že máte chybný typ - pro mazání se použije tedy porovnání textových řetězců.

Proč ignorujete další důležité otázky?
pito
Profil
Kajman:
Tu druhou otázku nevím co myslíte.
a ta poslední otázka u $oldentries je nastaveno 7 dní
viz.

// Optional settings
//

$style = "dark"; // Counter Style "dark" or "light"
$show = "totally"; // Counter shows "totally"  or "last24h"  visitors
$size = "big"; // Size of the counter "small" or "big"

$reload=3*60*60; // Reload lock in seconds (3 * 60 * 60 => 3 hours)
$online=3*60; // online time in seconds (3 * 60 => 3 minutes)
$oldentries=7; // delete Visitor infos after x days (7 => 7 days)

//
// End of settings
//

// connect to database
$serverID = @mysql_connect($db_host, $db_user, $db_pass);
if(!$serverID) {echo "The DB server is not reachable!"; exit;}
$datenbank = @mysql_select_db($db_name, $serverID);
if(!$datenbank) {echo "The database was not found!"; exit;}



teď se dívám jestli to nedělá právě ten $reload ,protože to pasuje i ten čas ty 3hod. že se mi to z té databáze smaže.
Kajman
Profil
pito:
Tu druhou otázku nevím co myslíte.

Na jakou hodnotu nastavujete sloupce day u ručně vkládaných dat?

Předtím jsem používal google analytics a když jsem udělal tu statistiku tak jsem vložil ručně do databáze údaje z google analytics př. odkud lidi přišli, počet návštěv atd. ale jak to vložím tak se mi to za chvílí s DB smaže.
pito
Profil
no ale u day tabulky se mi to nemaže,ale u Language a Referer


jinak v tabulce Language u sloupce day vložím to datum nějaké si vymyslím př. 2012.04.03
Kajman
Profil
pito:
u sloupce day vložím to datum nějaké si vymyslím př. 2012.04.03

Pak se to smaže, protože je to starší než těch 7 dní.
pito
Profil
Kajman:
To je nějaké zajímavé, protože tam mám v tabulce už dlouho 2 záznamy které jsem nepřidával já,ale samo to vložilo do DB a pořád to tam je.
Kajman
Profil
A co je u nich ve sloupečku day?
pito
Profil
    id    day    language    view
            21    2012.04.14    cs    9
            13    2012.04.03    en    4



aha už to tam není to 13 2012.04.03 en 4 muselo se to teď smazat. Spíš si myslím že se mi to smazalo po 3 hod., protože jsem to u toho en přepsál datum z 2012.04.13 na 2012.04.03.
A to každé 3hod. kontroluje data či co a jestli tam je nějaký už strarší 7 dní tak ho smaže.hm to je ale nějaké blbé, protože to je statistika co jsem našel na netu. A ještě k tomu to je statistika odkud návštěvníci přišli tak proč by to mazalo data v databazi když se mněl započitávat přístup. Nechápu.
Takže jinak bych mněl odstranit ten $oldentries a mnělo byto být na pořád ano?
Kajman
Profil
pito:
to je ale nějaké blbé, protože to je statistika co jsem našel na netu

Tak to jste si asi blbě vybral.

Takže jinak bych mněl odstranit ten $oldentries

Odstraněním se to nezlepší (spíš byste musel nastavit proměnnou na rozumně dlouho dobu). Pokud to nechcete promazávat, tak smažte nebo zakomentujte ty delete příkazy [#3].

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