Logování ajpin – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Logování ajpin – PHP – Fórum – Programujte.comLogování ajpin – PHP – Fórum – Programujte.com

 

Jan Šlégr0
Newbie
21. 1. 2007   #1
-
0
-

Mějme kód

<? 

$ipFile = "pocitadlo/ip.txt";
$dac=Date("Y/m/d, H:i:s");
global $dac;
global $ipFile;
global $REMOTE_ADDR;
$ips = fopen($ipFile, "a");

fputs($ips, $REMOTE_ADDR . " " . $dac . "\r\n");

fclose($ips);

?>

Myslím, že je jasný - do souboru ip.txt ukládáme datum, čas a IP adresu počítače, ze které byla otevřena naše stránka. Chtěl bych jej ale vylepšit tak, aby se každá IP adresa ukládala za den jen jednou. Jak to udělat? Díky všem.

Nahlásit jako SPAM
IP: ...–
Jan Škrášek
~ Redaktor
+1
Boss
21. 1. 2007   #2
-
0
-

ukládal bych to do databáze.....no a tam už jde vymyslet víc řešení.....

Nahlásit jako SPAM
IP: ...–
http://jan.skrasek.com@hrachcz – webdeveloper
olgo0
Věrný člen
21. 1. 2007   #3
-
0
-

jednoducho. ked poznas datum a ip tak zistiz ci uz tam je:



$chrs=15+1+4+2+2+1+1+2+2+2;
//nastavis pevnu dlzku riadku
//ip+medzera+rok+mesiac+den+ciarka+medzera+hodina+minuta+sekunda
$row=fread($ips,$chrs);
//precitas $chars znakou
if(ereg("/^".$REMOTE_ADDR." ".date("Y/m/d")."\, [0-9]+_*$/",$row)):
/*hladas retazec zacinajuci tou ip, nasledovany medzrerou, dnesnym datumom, ciarkou, medzerou a nejakymi cislamy(cas)*/
//je tam dnesny zaznam
else
//nic z dnesku tam este neni
endif;

problem je tan ze kazdy riadok musi mat rovnaky pocet znakov (zrychluje to uz aj tak pomale hladanie) staci ne konec pridat podtrzitka. v tomto pripade nebude treba ani odriadkovanie (jedine ze by si to chcel citat "rucne") ked ho tam das musis pocitat zo znakmy navise. ukladas to potom ako:


$str=$REMOTE_ADDR." ".$dac;
do{
$str=$str."_";
}while(strlen($str)==$chrs);
fputs($ips,$str);

neni to zrovna elegantne ale funkce (neny som si tym isty pisem to z hlavy) samozrejme ze db je daleko lepsia volba

Nahlásit jako SPAM
IP: ...–
"Boze, dopraj mi, prosim ta, petdesiat rokov prace a zabavy, a potom nahlu smrt v spanku." J. Grisham
Jakub0
Super člen
21. 1. 2007   #4
-
0
-

Říká někomu něco pojem atomicita?

Nahlásit jako SPAM
IP: ...–
Věřím, že můžete v životě získat všechno, co budete chtít, když budete pomáhat druhým lidem, aby dostali to, co si přejí oni. - Zig Ziglar TOPlist
olgo0
Věrný člen
21. 1. 2007   #5
-
0
-

To D1ce: na čo tým poukazuješ?

Nahlásit jako SPAM
IP: ...–
"Boze, dopraj mi, prosim ta, petdesiat rokov prace a zabavy, a potom nahlu smrt v spanku." J. Grisham
Jakub0
Super člen
21. 1. 2007   #6
-
0
-

olgo píše:#
# To D1ce: na čo tým poukazuješ?


UTFG

Nahlásit jako SPAM
IP: ...–
Věřím, že můžete v životě získat všechno, co budete chtít, když budete pomáhat druhým lidem, aby dostali to, co si přejí oni. - Zig Ziglar TOPlist
olgo0
Věrný člen
21. 1. 2007   #7
-
0
-

olgo píše:
To D1ce: na čo tým poukazuješ?




UTFG


ano ale nechapem suvislost . . .

Nahlásit jako SPAM
IP: ...–
"Boze, dopraj mi, prosim ta, petdesiat rokov prace a zabavy, a potom nahlu smrt v spanku." J. Grisham
Jakub0
Super člen
22. 1. 2007   #8
-
0
-

olgo píše:#
#

olgo píše:#
# To D1ce: na čo tým poukazuješ?

#
##
##
#UTFG

#
#ano ale nechapem suvislost . . .


Počítadlo, které se ti smázne když 2 thready běží v podobnou dobu, je asi na dvě věci. Tato pravděpodobnost je přímo úměrná počtu návštěvníků per some period. Ale na web, kam se dívá jen autor, přímo ideální...

Nahlásit jako SPAM
IP: ...–
Věřím, že můžete v životě získat všechno, co budete chtít, když budete pomáhat druhým lidem, aby dostali to, co si přejí oni. - Zig Ziglar TOPlist
olgo0
Věrný člen
22. 1. 2007   #9
-
0
-

Ale na web, kam se dívá jen autor, přímo ideální...

:ms_0021:

Počítadlo, které se ti smázne když 2 thready běží v podobnou dobu, je asi na dvě věci.


da so to obist (samozrejme s pouzitim suborou)?

Nahlásit jako SPAM
IP: ...–
"Boze, dopraj mi, prosim ta, petdesiat rokov prace a zabavy, a potom nahlu smrt v spanku." J. Grisham
DavesMan
~ Anonymní uživatel
26 příspěvků
22. 1. 2007   #10
-
0
-

Ad atomicita:
Nevím, jestli má PHP nějaké funkce pro synchronizaci vláken, nikdy jsem to nezkoumal. Řekl bych, že ne.
Dá se vyřešit zamykáním na úrovni DB nebo souboru.

Nahlásit jako SPAM
IP: ...–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 33 hostů

Podobná vlákna

Web Services - logování — založil davedpe

Služba - logování vyjímek — založil hlucheucho

JAVA mail, logování — založil Petr

Logovanie vynimiek — založil manro

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý