Avatar billede Slettet bruger
09. juni 2010 - 20:14 Der er 13 kommentarer

PHP countdowner/timer

Kender i de der hjemmesider som ogame, og travian, hvor man får et max antal point hver time, men hvordan laver man dette script, har søgt google igennem hele dagen.
jeg kan ikke finde en med nedtæller,

hvis i kan hjælpe så mange tak!
uddeller 200 point til alle dem der hjælper mig.
MVH JESPER KAAE
Avatar billede arne_v Ekspert
09. juni 2010 - 20:32 #1
Der er grundliggende to maader at loese dette problem paa:

1) du laver et program som opdaterer brugerne og koerer det en gang i timen via en scheduler (cron i *nix terminologi)

2) du lader den request som viser data opdatere data foerst
Avatar billede Slettet bruger
09. juni 2010 - 20:36 #2
kan du hjælpe mig med det arne?
Avatar billede arne_v Ekspert
09. juni 2010 - 20:45 #3
Tjo.

Hvilken af de to loesninger skal det vaere?
Avatar billede Slettet bruger
09. juni 2010 - 20:46 #4
helst den nemmeste som du synes? (:
og nemmest at begynde med så man får følsen af hvordan man gør det?
Avatar billede Slettet bruger
09. juni 2010 - 21:07 #5
?
Avatar billede arne_v Ekspert
10. juni 2010 - 04:12 #6
Jeg vil foreslå dig at bruge #2.
Avatar billede arne_v Ekspert
10. juni 2010 - 04:23 #7
Hvis din bruger tabel har felter:

...
brugernavn
oprettet
...
timepoint
brugtpoint
tjentandetpoint
...

så skal du når du skal hente point bruge (jeg antager MySQL):

...
mysql_query("UPDATE brugertabel SET timepoint=5*CAST(TIMEDIFF(NOW(),oprettet) AS UNSIGNED) WHERE brugernavn=$bruger");
...
$q = mysql_query("SELECT timepoint+tjentandetpoint-brugtpoint AS point FROM brugertabel WHERE brugernavn=$bruger");
...
Avatar billede Slettet bruger
11. juni 2010 - 15:06 #8
Den der time point, skal den være INT? eller TIME, eller?
Avatar billede arne_v Ekspert
11. juni 2010 - 15:16 #9
INT
Avatar billede Slettet bruger
11. juni 2010 - 15:17 #10
Jeg kan ikke få den til at virke,
Atlså jeg har en table der hedder "brugere", under "brugere" har jeg en (    bygningtimer    int(11) )
Men jeg kan ikke få den til at virke,
kan du skrive koden til at få den til at virke?
Avatar billede arne_v Ekspert
11. juni 2010 - 17:09 #11
Du tager koden i #7 og retter navnene til.
Avatar billede Slettet bruger
11. juni 2010 - 23:42 #12
kan ikke få det til at virke"
bruger følgende kode

$bruger = $session->username;
mysql_query("UPDATE brugere SET bygningtimer=5*CAST(TIMEDIFF(NOW(),oprettet) AS UNSIGNED) WHERE brugerid=$bruger");
Avatar billede arne_v Ekspert
13. juni 2010 - 05:06 #13
Og hvilken fejl får du?

Evt. med:

or die(mysql_error())

efter mysql_query kaldet !
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
Computerworld tilbyder specialiserede kurser i database-management

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