01. maj 2011 - 14:56Der er
22 kommentarer og 1 løsning
Point system med PHP og MySQL
Kære eksperter.
Nu programmere jeg en hel del PHP, og bruger MySQL. Jeg vil gerne udvide min viden omkring PHP verdenen, og derfor ville jeg hører om der var nogle der ville forklare mig hvordan man opsætter et point system.
Jeg benytter mig af min egen form for opstilling på mine sider, derfor er det svært at forklare hvordan jeg sætter hjemmesider op.
Lige nu programmere jeg på min egen blog, og har ikke så meget brug for at point system på min blog, men senere hen kunne det godt være at jeg ville bruge det, og derfor ville jeg gerne lærer om det.
På forhånd mange tak. Jeg udlover 60 point til den som giver mig et konkret svar som er nyttigt, og som jeg kan bruge.
#3 Jeg har kigget på begge links. Det første har jeg i forvejen kigget på, og den anden virker ikke, altså den download, for den har jeg prøvet at downloade før. Det er ret irriterende. Jeg har nogle fornemmelser af hvordan man gør, men jeg er ikke sikker, derfor spørger jeg :).
Men tak for dit svar. Hvis du finder noget mere specifikt så skriv, vil gerne lærer lidt om det :).
Jeg har fået et nogenlunde svar på udvikleren.dk, og det vil jeg gerne dele med jer:
Han ville ikke give direkte kode, men en forståelse for hvordan man gør.
$sql = "UPDATE brugere SET point = point - $antalpoint WHERE id='$_SESSION[userid]'"; mysql_query($sql); $sql2 = "UPDATE brugere SET point = point + $antalpoint WHERE id='$givenUser'"; mysql_query($sql2);
Håber at i kan bruge det til noget, for jeg skal afprøve det. Men jeg sætte stadig de 60 point til rådighed hvis der er nogle der kan komme med mere brugbart kode, og flere informationer som er direkte. Men hvis jeg ikke får et bedre svar, så trækker jeg desværre de point tilbage :).
Hvad er 'brugbar kode'? Hvad er det du forventer? At der er nogen der kommer med en færdig løsning du kan implementere og bare ændre lidt design? Ellers må du være mere konkret i din problem-stilling.
Meningen med eksperten.dk er hjælp til selvhjælp - hvis du vil have noget færdigt må du udvikle din Google-fu eller frem med læderet.
#6 Jeg forventer ikke en færdig kode? Jeg spørger efter om der er nogle der har lidt mere indhold i svaret. Hvorfor skal du brokke dig i alle mine indlæg? Er meningen med at man indsender et spørgsmål ikke at man får hjælp? Jeg har ikke bedt om en diskussion, men om en slags "debat". Du render mig i røven og vil have at jeg skal gøre alt perfekt?
Jeg stiller dig et par konkrete spørgsmål, som du kvitterer for med sætningen "Du render mig i røven og vil have at jeg skal gøre alt perfekt?" - hvis det er den måde du har tænkt dig at kommunikere på fremover, så garanterer jeg dig for at du ikke får det meget nemmere fra nogle af de andre brugere.
Essensen er at heinzdmx har forsøgt at hjælpe dig - din respons er at svaret ikke er fyldestgørende. Du har heller ikke gjort yderligere ved din tråd på udvikleren.dk andet end at videregive en oplysning uden kontekst til os her - du slutter derefter af med at sige at du stadig mangler et 'bedre svar', for ellers vil du 'trække dine point tilbage' (bare rolig, så pointliderlige er vi heller ikke).
Ergo må du opdatere din problemstilling for os og være mere konkret og uddybende. Dit spørgsmål er for vagt/bredt eftersom det ikke kan besvares med den blotte idé eller nogle forslag fra Google.
Jeg forventer ikke at du 'gør alt perfekt' - jeg forventer at du gør noget for at hjælpe dig selv. Så fald du bare ned og slap af.
Du har nu muligheden for at udvikle dig - snak pænt, svar på vores spørgsmål og du vil få den respons som du efterlyser.
Du har også muligheden for at besværliggøre det yderligere for dig selv, ved at fortsætte med at bitche over lidt modgang...
#8 Du benytter dig af muligheden for nærmest at "nedgøre" mig i en af mine guides, så det er ikke den måde du skriver i det her spørgsmål, kun. Det er bare den måde du udtaler dig på overfor mig.
Men ja ja, så trækker jeg mine point tilbage hvis du ikke fatter hvad jeg mener.
#9 Endnu engang missede du hele pointen... Held og lykke med din færd fremover på eksperten.dk - den bliver vist ikke bedre for dig med din indstilling.
#10 Jeg ved godt at du retter på mig pga. min udtagelse, og hvordan jeg formulere mit spørgsmål. Men når du mener at jeg er amatør, uden du ved hvad jeg kan, så gider jeg sådan set ikke høre på din udtagelse. Vil gerne hvis du formulere din kommentar bare en lille smugle positivt.
Nu har jeg lukket muligheden for at modtage point pga. dig, så håber at du er glad nu. Skal nok prøve at udtale mig anderledes, men så lad være med at blive ved med at rette på mig.
Hvis du nu holdte op med at tage alting så højtideligt og indså at du, ligesom jeg selv, altid kan lære mere,vil vores kommunikation hurtigtog blive lettere - meget endda!
I øvrigt vil jeg gerne bede dig om ikke at lægge ord i munden på mig - jeg har ikke kaldt dig for en amatør - blot sagt at du mangler erfaring. At du sidestiller de to skal ikke gøres til mit problem.
Hvis du nu startede med at acceptere at der altid vil findes mennesker som er væsentlig dygtigere end dig og selvsamme mennesker vil også have en mening om det du offentliggører, hvadenten du kan lide den eller ej, vil du hurtigt få det meget nemt her - samtidig med lidt personlig udvikling.
#12 Jeg har accepteret for længe siden at der er folk med meget større erfaring end mig. Men kan godt se hvad du mener, jeg tager tit ting for personligt, og det undskylder jeg for.
Men vil gerne have sat en streg over det her, for har været meget provokeret af det.
Det første du skal gøre er at lave en måde for brugeren at vælge hvilken bruger der skal have point, det være sig en <select> og dertilhørende value eller en textbox
Dernæst skal du bruge #5
$UserName = mysql_real_escape_string($_POST['username']) $sql2 = "UPDATE brugere SET point = point + $antalpoint WHERE id='$UserName'"; mysql_query($sql2);
Det kræver så bare at din form har en form for input med name sat til username.
1. Der er intet behov for et hidden input field. Du skal jo have fat i et brugernavn, dette kan du f.eks. gøre med en select (rulleliste med brugere, eller et felt hvor brugeren kan skrive brugernavnet
$sql = "UPDATE users SET point = point - $point WHERE id='". $_SESSION['id'] ."' "; mysql_query($sql); $sql2 = "UPDATE users SET point = point + $point WHERE id='". $_GET['id'] ."' "; mysql_query($sql2);
$sql = "UPDATE users SET point = point - $point WHERE id='". mysql_real_escape_string($_SESSION['id']) ."' "; mysql_query($sql); $sql2 = "UPDATE users SET point = point + $point WHERE id='". mysql_real_escape_string($_GET['id']) ."' "; mysql_query($sql2);
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.