Kom ihåg mig?
Home Menu

Menu


SQL, datediff funktion

Ämnesverktyg Visningsalternativ
Oläst 2007-08-31, 20:36 #1
Kristofers avatar
Kristofer Kristofer är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Mar 2004
Inlägg: 1 053
Kristofer Kristofer är inte uppkopplad
Har WN som tidsfördriv
Kristofers avatar
 
Reg.datum: Mar 2004
Inlägg: 1 053
Hej!
Brukar inte fråga ofta men nu är jag less på att leta och köra trial-and-error efter 30mins misslyckande när jag är övertygad om att detta är barnsligt enkelt för vissa.

Jag sparar IP och Datum + Tid i en tabell för att hålla lite koll på mina besökare.
Jag vill på förstasidan ha en check mot tabellen för att se hur länge sedan detta IP senast besökte sidan och om det är över 1 timme sedan så ska en rad skrivas i databasen med den nya informationen. Skulle klara att ta ut tiden för senaste besök, köra en datediff med ASP och sedan en IF-sats i ASP för att slutligen eventuellt lägga in en ny rad. Känns dock som att det är dags att optimera det lite genom att kolla det direkt i mySQL-satsen som hämtar data.

Frågan är hur jag bäst går tillväga, jag kodar i ASP.

Mvh
Kristofer
Kristofer är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-09-01, 16:48 #2
eg0master eg0master är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Oct 2004
Inlägg: 898
eg0master eg0master är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Oct 2004
Inlägg: 898
Någon form av pseudokodsliknande:
Kod:
INSERT yourTable(ip, when)
SELECT ip, now()
FROM yourTable
WHERE ip = $CLIENT_IP
AND when < (now() - 1 hour)
AND when = (select MAX(when) FROM yourTable WHERE ip = $CLIENT_IP)
Om selecten ger noll rader kommer ingen ny rad läggas till, det är findessen.
eg0master är inte uppkopplad   Svara med citatSvara med citat
Oläst 2007-09-03, 18:17 #3
martines avatar
martine martine är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Mar 2005
Inlägg: 767
martine martine är inte uppkopplad
Mycket flitig postare
martines avatar
 
Reg.datum: Mar 2005
Inlägg: 767
Hakar på den här tråden eftersom titeln passar så bra.

MySQL vill inte kännas vid funktionen DATEDIFF! Version 5.0.44.
http://dev.mysql.com/doc/refman/5.0/en/dat...nction_datediff

Border fungera finfint! Vad har jag missat:
Kod:
SELECT DATEDIFF(datum1,datum2)
Detta ger:
#1305 - FUNCTION dbx.DATEDIFF does not exist

Någon som har en aning?
martine är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 13:01.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017