anonīms Posted April 5, 2009 Report Share Posted April 5, 2009 Varbūt kādam ir aizķēries kāds skirpts, kas uzskaita cik apmeklētāju ir bijuši vienas dienas laikā? googlēju, hotscripts skatijos, bet neko neatradu. Quote Link to comment Share on other sites More sharing options...
Grey_Wolf Posted April 5, 2009 Report Share Posted April 5, 2009 ja izmanto DB, tad vari dariit taa: izveidot tabulinu ar laukiem ID|IP|datums_laiks| un vedot sessiju kur: parbaudi vai apmekletajs ==true vai nee ja nav tad ieraksti DB, IP un laiku, pec tam sesiijaa ieliec true ... talak jau nav seviskjas problema dabuut apmekletaju skaitu, gan par konreto dienu gan stundu utt.. --- Neaizmirsti ka IP Db glabaa kaa INT ----------- P.S. Hostskriptos ir N-tie skripti kas ljauj uzskaitiit apmekletajus , gan pavisam vienkarshi gan sarezgjiiti ... Quote Link to comment Share on other sites More sharing options...
anonīms Posted April 5, 2009 Author Report Share Posted April 5, 2009 ip INT? o0 bet kā ar punktiem? Quote Link to comment Share on other sites More sharing options...
bubu Posted April 5, 2009 Report Share Posted April 5, 2009 Interneta adrese IPv4 formā aizņem precīzi 4 baitus - tieši tik cik INT lauks nodrošina (pariezāk gan būtu lietot UNSIGNED INT). Punkti ir tikai cilvēkam "draudzīgajā" pierakstā, kur katrs baits ir pierakstīts decimālajā sistēmā, un šie baiti atdalīti ar punktiem. Labums no tā visa ir, ka INT aizņems mazāk vietas datubāzē, kā arī tu varēsi lietot salīdzināšanas operatorus starp tiem, piemēram < vai >, kā arī kārtošanu normālā kārtībā. Tajā "draudzīgajā" pierakstā tu to nevarēsi. Quote Link to comment Share on other sites More sharing options...
Grey_Wolf Posted April 6, 2009 Report Share Posted April 6, 2009 anonīms --> IP adreses Visur glabaajas INT formataa... Db un PHP pat ir specialas f-jas konvertesanai INET_ATON() parversanai IP uz INT $apm_ip=$_SERVER['REMOTE_ADDR']; INSERT INTO conteris SET ip =INET_ATON('$apm_ip') un nolasiisaina INET_NTOA() no INT uz IP SELECT INET_NTOA(ip) AS gatavs_ip FROM conteris Quote Link to comment Share on other sites More sharing options...
anonīms Posted April 7, 2009 Author Report Share Posted April 7, 2009 a kuru tipu labāk būtu izmantot pie datuma? timestamp? Quote Link to comment Share on other sites More sharing options...
Aleksejs Posted April 7, 2009 Report Share Posted April 7, 2009 anonīms, jā, timestamp ir gana labs. Quote Link to comment Share on other sites More sharing options...
Grey_Wolf Posted April 7, 2009 Report Share Posted April 7, 2009 (edited) a kuru tipu labāk būtu izmantot pie datuma? Datubaazes izmanto Konkretas DB datua tipu Mysql tie ir 3 veidi Date --> tikai datums Time --> pulkstenja laiks DateTime --> abi kopaa.. Izmantojot konkretaas DB datuma laukus iegust sadus plusus 1. Ljoti daudz gatavu (iebuvetu) f-ju datuma atlasiishanai( pec dienas menesa gada, stundas , minutes, sekundes), iespeja paprasiit visus ierakstus kas Vecaki/ jaunaki par noteikto laiku (nav nekas jarekjina .... 2. f-jas datuma formatesana , liidzigi kaa PHP data() ( princips ir gandriiz identisks) 3. izvairamies no kljudas ja jasaglabaa datums ka vecaks par 1970.01.01 ( teiksim dzimsanas datumus) 4. ieraksta laiku var piefikseet arii ar NOW() --> ieraksta izdarisanas laiks --- galvenaa, un viena no noteicosam, ir iespeja izvairiities no UnixTimestamp kljudas datumiem ap 1970.01.01 , un vecakiem faktiski ar Unix timestamp nevaresi saglabaat 1969.12.31 :23:59:59 , un attieciigi 2 sek velaak, Ljoti liels procents ka var notiek kluuda... --- Edited April 7, 2009 by Grey_Wolf Quote Link to comment Share on other sites More sharing options...
anonīms Posted April 7, 2009 Author Report Share Posted April 7, 2009 Tātad mēģinu ar datetime. Iesākums izskatās tā $apmekletaja_ip = mysql_real_escape_string($_SERVER['REMOTE_ADDR']); $parbaudam_vai_vins_sodien_ir_bijis = mysql_query("SELECT ip FROM floorball_online_today WHERE ip = '$apmekletaja_ip' AND datums = echo date('Y-m-d, H:i:s'); // Kā piemērs pašreizējam laikam. Tagad jautājums. Kā uzlikt WHERE datums(diena_menesis_gads) == ".date('Y-m-d')." ? // Lai viņš ņem tikai tos, kas ir šajā dienā Quote Link to comment Share on other sites More sharing options...
Grey_Wolf Posted April 7, 2009 Report Share Posted April 7, 2009 (edited) kaapec tu IP glabasaina neizmanto INT ?? tas ir Krietni atraks nekaa Warchar lauks --- Es tachu pat uzrakstiju piemerus kaa Ievadiit un kaa izvilkt .. Edit: taas SQL f-jas jau var izmantot ne tikai Tuulit aiz SLECT bet arii saliidzinasanai .. SELECT count(*) FROM tabulis WHERE ip=INET_ATON('$apm_ip') AND YEAR(laiks)='2009' AND MONTH(laiks)='4' AND DAYOFMONTH(laiks)='8' kur $apm_ip=$_SERVER['REMOTE_ADDR']; -- Nevar saliidzinat , kaa dari tu, jo neaizmirsti ka ir arii Pulksstenja laiks, ja glabaatu tikai pliku datumu tad varetu .... -- Piemeraa protams gadus, menesi, datumu nomaini pats, Bet sadi var atlasiit Jepkuru konkreto datumu, vai Piemeram uzzinat cik unikalas IP bijushas konkretaa Dienakts stundaa... Edited April 7, 2009 by Grey_Wolf Quote Link to comment Share on other sites More sharing options...
anonīms Posted April 7, 2009 Author Report Share Posted April 7, 2009 (edited) mysql_query("insert into floorball_online_today (ip, datums) VALUES ('".INET_ATON($apmekletaja_ip)."', '".date('Y-m-d H:i:s')."')"); : Call to undefined function: inet_aton() config failā jāmaina kaut ko? :\ btw, par NOW() // Neesmu viņu nekad izmantojis mysql_query("insert into floorball_online_today (ip, datums) VALUES ('".INET_ATON($apmekletaja_ip)."', '".NOW()."')"); arī par undefined function bļauj. Edited April 7, 2009 by anonīms Quote Link to comment Share on other sites More sharing options...
Grey_Wolf Posted April 7, 2009 Report Share Posted April 7, 2009 (edited) anonīms --> tu lasiit maki ??? Es nevienaa briidii nesmu teicis kaa taa ir PHP f-ja !!!! jarakstaa tieshi taa kaa uzrakstiju INET_ATON('$apm_ip') tas pats attiecas uz NOW() Tas ir SQL f-jas attieciigi, NEVAJAG vinjas iznes arpus pedinjam Edited April 7, 2009 by Grey_Wolf Quote Link to comment Share on other sites More sharing options...
anonīms Posted April 8, 2009 Author Report Share Posted April 8, 2009 (edited) http://paste.php.lv/125e47dca856b6602b6015...09f76c?lang=php Šķiet, ka sanāca :) un apmeklētāji šomēnes ar izveidoju. Viss iet ideāli. Edited April 8, 2009 by anonīms Quote Link to comment Share on other sites More sharing options...
anonīms Posted April 8, 2009 Author Report Share Posted April 8, 2009 Sorry par dp, bet vēlējos pacelt tematu. Kā varētu izvilkt apmeklētāju skaitu šonedēļ? Quote Link to comment Share on other sites More sharing options...
Aleksejs Posted April 8, 2009 Report Share Posted April 8, 2009 Skatoties, ko tu domā ar šonedēļ :) Ja šo konkrēto nedēļu (pirmdiena - svētdiena), tad WEEK(), savukārt, ja ±3 dienas abos virzienos, tad DATEDIFF(). Bet vispār - izpēti visas tās date/time funkcijas - būs pašam vieglāk :) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.