Avatar billede hvisle Nybegynder
04. juni 2003 - 15:16 Der er 16 kommentarer og
2 løsninger

Opdatere db hvert 10 min.

Hi

Kan det la sig gøre at opdatere en database med info hvert 10 min ? ...
f.eks at den hvert 10 min, ligger 1 "point" til et tal i en kolonne/tabel/database.

På forhånd tak!
Avatar billede medions Nybegynder
04. juni 2003 - 15:20 #1
Nej, det kan du ikke!

Det er kun muligt at updatere en side i det den bliver eksekeveret af en bruger!

//>Rune
Avatar billede medions Nybegynder
04. juni 2003 - 15:21 #2
Men du kal jo lave en beregning hvor du beregner hvor mange points der skal ligges til i det næste bruger logger på med nogle If..Then sætninger!

//>Rune
Avatar billede hvisle Nybegynder
04. juni 2003 - 15:31 #3
hmmm skod :(
jeg ville gi fx et "point" til en bruger hvert 10 min, dvs 144 per døgn.
Hvordan gør jeg så det, så man kan se man har fået 1 point mere, hvis man opdatere siden efter 10 min med If..Else o.s.v ?.
Og selfølgelig har man været væk fra siden i lang tid og kommer på igen, vil det passe med man har fået 1 point mere, for hvert 10 min man har været væk....
Nogen ideer ?
Avatar billede dk_akj Nybegynder
04. juni 2003 - 15:33 #4
Hvis du har en tabel med 3 felter

Id pts lastupdate


Denne sql beregner hvormange gange der er gået 10 min og opdaterer points
update points set pts =  (((now() -  lastupdate ) * 86400) /600) , lastupdate = now();

//akj
Avatar billede hvisle Nybegynder
04. juni 2003 - 15:34 #5
hmmm kom til at tænke på ...
Kan man ik lave så, når man opretter sig som bruger, så skriver den dato og tid i en tabel... så ku den måske bruge den dato og tid til at udregne point efter ?
Avatar billede dk_akj Nybegynder
04. juni 2003 - 15:35 #6
how sql'en skulle være:
update points set pts = pts +  (((now() -  lastupdate ) * 86400) /600) , lastupdate = now();
Avatar billede hvisle Nybegynder
04. juni 2003 - 15:38 #7
okay ...
kan jeg logge dig til at skrive et eksempel, der virker ?
.. så jeg kan se hvordan jeg sammensætter det... er lidt ny :)
Avatar billede netro Nybegynder
04. juni 2003 - 16:02 #8
Hvis du har adgang til at oprette opgaver på serveren, kan du lave dig et task, der afvikler en given fil med et givent interval.
Avatar billede eagleeye Praktikant
04. juni 2003 - 16:03 #9
Det kommer da an på databasen. Så vidt jeg ved kan man da i MSSQL få den til køre et scheuled task, som kunne være en SQL sætning eller ligne.

Hvis du har din egen server kan du få den til at køre et scheduled task ekvvis loade en side. Ved nogle webhoteller kan du købe den service at få et task udført.
Avatar billede dk_akj Nybegynder
04. juni 2003 - 16:55 #10
Her er et eksempel i access

http://www.eybye-kjaer.dk/uploads/files/db11(1).mdb

Bemærk points i tabellen points og kør derefter query opdater point.

//akj
Avatar billede hvisle Nybegynder
04. juni 2003 - 18:13 #11
Okay, men hvordan får jeg databasen til det ? ... gider jo ik manuelt opdatere det hele tiden ...
Kan man ik lave noget a la:
<%
session("bruger") = Hvisle

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=min.mdb"

sql = "select * from users where Navn = '" & session("bruger") & "'"

Set rs = Conn.Execute(sql)
set pts = now()
set pts = pts - " & rs('lastupdate') & "
set pts = pts * 86400
set pts = pts / 600

set pts = pts + " & rs('pts') & "

response.write " du har nu '" & pts & "' points. "

%>
Det virker dog ik den her, kommer med denne fejl:
Error Type:
Microsoft VBScript runtime (0x800A01A8)
Object required: '6/4/2003 6:14:01 PM'
/points.asp, line 20
Avatar billede dk_akj Nybegynder
04. juni 2003 - 19:11 #12
conn.execute("UPDATE points SET pts = [pts]+(((now()-[lastupdate])*86400)/600), lastupdate = now()")


//akj
Avatar billede hvisle Nybegynder
04. juni 2003 - 20:30 #13
Tak for hjælpen der, virker fint!
Avatar billede eagleeye Praktikant
04. juni 2003 - 20:33 #14
LOL medions får 20 point for at svare forkert ;)
men netro og jeg får 0 for at havde svaret rigtigt.
Avatar billede netro Nybegynder
04. juni 2003 - 20:39 #15
Ehmm... tak for points :o)
Avatar billede hvisle Nybegynder
04. juni 2003 - 21:04 #16
Hvis i nu havde uddybet jeres svar noget mere, så ku det være...
Desuden giver jeg da point efter den bedste løsning, i forhold til det jeg har gang i...
ps: medions forsat svar da rigtigt nok!
Avatar billede netro Nybegynder
07. juni 2003 - 15:29 #17
Den bedste (eneste) løsning på netop dit problem er et scheduled task.
Du kan da nok forstå, jeg ikke gider sidde skrive side op og side ned om det, før jeg er sikker på, det er noget, du er interesseret i.

Derfor den korte præsentation (appetitvækker)...
Avatar billede hvisle Nybegynder
07. juni 2003 - 16:21 #18
ja ... du skulle sq også ha haft point da ... :/
Men når nu man ik aner hvad det er, er det sq svært at forholde sig til det.
Desuden koster det vel også penge, at få sit webhotel til det.... og det er jeg ik interresseret i at betale for ... :/
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester