+1 point

Tags:    php

<< < 12 > >>
Sidder med et cms system, hvor brugerne kan få point.

Jeg har dog et problem, når de skaffer en besøgende skal de have et point, men jeg ved ikke hvordan jeg pluser med de forrige jeg har en ide med:

$plus = $point + 1;
mysql_query("UPDATE brugere SET point = '$plus' WHERE brugernavn = '$_GET[brugernavn]'") OR (die mysql_error());

men ved ikke om man kan det, er meget usikker på den der hedder $plus



15 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 2 karma
Sorter efter stemmer Sorter efter dato
Ved godt hvor fejlen lå nu, havde skrevet i ?&id= der havde jeg skrevet "Morten" men skulle selvfølgelig have skrevet 1 ;). Min ftp svarer heller ikke lige pt, så tester det lige om lidt.



mysql_query("UPDATE `brugere` SET point = point + 1 WHERE id = '$_GET[id]'") or die(mysql_error());


Jeg ville anbefale mit eget eksempel da jeg syntes at det giver en ren kode uden alt for meget irreterende lang kode.
Fold kodeboks ind/udKode 


Men det er dig der bestemmer ;)

irriterende lang kode? Jeg tror de fleste kan blive enige om at det er langt pænest og mest effektivt at lade SQL'en ordne den slags :)



mysql_query("UPDATE `brugere` SET point = point + 1 WHERE id = '$_GET[id]'") or die(mysql_error());


Jeg ville anbefale mit eget eksempel da jeg syntes at det giver en ren kode uden alt for meget irreterende lang kode.
Fold kodeboks ind/udKode 


Men det er dig der bestemmer ;)

irriterende lang kode? Jeg tror de fleste kan blive enige om at det er langt pænest og mest effektivt at lade SQL'en ordne den slags :)


Bestemt. Det er helt standard database optimering at man minimerer antallet af kald mellem database og klient. Ofte kan man også optimere mere komplekse scenarier ved hjælp af stored procedures.

Det er mere komplekst, men giver et mere optimalt resultat.



mysql_query("UPDATE `brugere` SET point = point + 1 WHERE id = '$_GET[id]'") or die(mysql_error());


Jeg ville anbefale mit eget eksempel da jeg syntes at det giver en ren kode uden alt for meget irreterende lang kode.
Fold kodeboks ind/udKode 


Men det er dig der bestemmer ;)


Dit eksempel kræver dog, at han kender antallet af point på forhånd, dvs. han allerede har lavet en forespørgsel på `brugere` tabellen ala:
Fold kodeboks ind/udKode 
, hvorefter han så skal opdatere tabellen med $point+1 (Dvs. 2 forespørgsler i alt).

Robert Larsens løsning kræver derimod ikke den første forespørgsel og bruger altså kun 1 forespørgsel. Om denne løsning er irriterende er så en smagssag, jeg foretrækker den :)

Edit: Jeg overser også altid pagingen :/



Indlæg senest redigeret d. 22.04.2009 22:50 af Bruger #8049
Tak til alle besvarrelser har gjort sådan her:

Fold kodeboks ind/udPHP kode 




Indlæg senest redigeret d. 23.04.2009 13:07 af Bruger #14124
<< < 12 > >>
t