Point system PHP

Tags:    php mysql

Hej udviklere.

Har en idé til et nyt project jeg vil starte op.

idén er at lave en side hvor folk kan optjene point ved at linke deres ref id til en masse venner.

Feks kan de dele dette link www.side.dk/?ref=2173 på facebook, og hvergang der er en unik bruger der klikker på det link får de 1 point.

Spørgsmålet er så bare hvordan jeg laver så alle der går ind på siden får et unikt ref id.

har i nogen idér :)?




6 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato
Bare en ide/forslag;
Fold kodeboks ind/udPHP kode 


din database skal så indeholde:
ref - INT
counter - INT
ukey - VARCHAR

det er ikke testet eller noget, håber du kan se idéen i det og bruge noget af det.



Indlæg senest redigeret d. 12.02.2012 16:41 af Bruger #3427
Hvis jeg forstår det rigtig:

Det unikke ID kan du tildele ved at brugeren opretter sig - så kommer der et ID som er "deres".

Når en besøgende klikker på linket tjekker du på eksempelvs IP-adressen, og ser om den eksisterer. Hvis den ikke gør, så skal den tilføjes til databasen.

Så kunne det eksempelvis se sådan her ud i databasen:

Fold kodeboks ind/udKode 


Bare som eksempel.
Og så et kald til databasen:

Fold kodeboks ind/udSQL kode 


Så kan linket se sådan her ud:

dinside.dk/?ref=2143

Selvfølgelig med noget php :)
Håber at jeg har forstået dit spørgsmål rigtigt :)



Indlæg senest redigeret d. 12.02.2012 15:52 af Bruger #16025
Hvis jeg forstår det rigtig:

Det unikke ID kan du tildele ved at brugeren opretter sig - så kommer der et ID som er "deres".

Når en besøgende klikker på linket tjekker du på eksempelvs IP-adressen, og ser om den eksisterer. Hvis den ikke gør, så skal den tilføjes til databasen.

Så kunne det eksempelvis se sådan her ud i databasen:

Fold kodeboks ind/udKode 


Bare som eksempel.
Og så et kald til databasen:

Fold kodeboks ind/udSQL kode 


Så kan linket se sådan her ud:

dinside.dk/?ref=2143

Selvfølgelig med noget php :)
Håber at jeg har forstået dit spørgsmål rigtigt :)


Hej Daniele , det er ikke helt det jeg er ude efter ;) - jeg ved godt at jeg kan lave et brugersystem som så giver hver enkelt bruger et unikt id, men jeg vil gerne gøre det så folk er fri for at registrere sig, så den feks giver en et unikt id for hver enkelt IP måske :P





Indlæg senest redigeret d. 12.02.2012 16:04 af Bruger #16669
Bare en ide/forslag;
Fold kodeboks ind/udPHP kode 


din database skal så indeholde:
ref - INT
counter - INT
ukey - VARCHAR

det er ikke testet eller noget, håber du kan se idéen i det og bruge noget af det.


Hvordan sikre jeg mig så at folk ikke kan besøge linket to gange, eller besøge deres eget link :)?





Bare en ide/forslag;
Fold kodeboks ind/udPHP kode 


din database skal så indeholde:
ref - INT
counter - INT
ukey - VARCHAR

det er ikke testet eller noget, håber du kan se idéen i det og bruge noget af det.


Hvordan sikre jeg mig så at folk ikke kan besøge linket to gange, eller besøge deres eget link :)?



så skal du lave en tabel og indsætte hver (nyt)besøg i, istedet for at have counter til at tælle.



Du skal finde ud af hvad du vil matche på.

Et oplagt check er IP - men der opstår et problem når flere brugere har samme eksterne ip - fx derhjemme med én ip fra routeren og flere i samme husstand der bruger din service - eller et helt gymnasium eller institution.

Et alternativ kunne være at gemme en cookie på den besøgendes browser. Første gang en person besøger din side opretter du en cookie i browseren og en record i din database med samme id (X). Når folk så besøger dinside.php?ref=X så tilføjer du en række i en anden tabel med ip, refID, timestamp og evt den besøgendes cookie ID eller noget lignende.

Når du så skal tælle hvor mange hits en side har fået kan du først vælge antal besøg til et givent ref id grupperet ved ip, og uden duplikerede CookieIDs.

Men det er straks mere kringlet, og der kan fuskes med sletning af cookies.

Hvis du lader folk oprette brugere, så bliver det nemmere at filtrere fusk fra, men så er der en ekstra barriere før man kommer i gang - det er mere optimalt fra et teknisk perspektiv - men det kommer jo an på hvad det i virkeligheden skal bruges til.



t