FAQ |
Kalender |
2008-11-16, 11:37 | #1 | ||
|
|||
Har WN som tidsfördriv
|
jag håller på och bygger ett litet räknings system, men kan inte hitta hur man får plus och minus i mysql <_<
jag kör annars UPDATE i mysql, fast då får man ju räkna ut själv hur mycket det blir i slutet. någon som har ett förslag på cod eller tillägg?? snälla hjälp! kör detta förslag för tillfället: Kod:
<?php $con = mysql_connect("localhost","peter","abc123"); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("my_db", $con); mysql_query("UPDATE Persons SET Age = '36' WHERE FirstName = 'Peter' AND LastName = 'Griffin'"); mysql_close($con); ?> |
||
Svara med citat |
2008-11-16, 12:07 | #2 | ||
|
|||
Mycket flitig postare
|
plus och minus av vad? Om kolmnen är en int så kan du köra field = field + 17
|
||
Svara med citat |
2008-11-16, 12:10 | #3 | ||
|
|||
Har WN som tidsfördriv
|
meningen med systemet är att medlemmar på sidan får poäng för saker som ddem gör på sidan, och då vill jag har typ så när de gör en sak så ska typ 10poäng gå in i databasen till den användaren.
alltså: plus elelr minus ur ett tal i databasen! |
||
Svara med citat |
2008-11-16, 12:15 | #4 | ||
|
|||
Klarade millennium-buggen
|
Citat:
Som sagt kan du köra additionen i sql-satsen Kod:
<?php $num_points = 10; //hur många poäng användaren får för just den åtgärden han gjort. var sql_string="UPDATE TABLE SET (points=points+$num_points) WHERE userid=$user_id;" //Kanske får du köra en switch här i en mer global funktion, eller gör en separat funktion add_points_to_user($user_id,100); ?> $num_points = -10; |
||
Svara med citat |
2008-11-16, 12:40 | #5 | ||
|
|||
Har WN som tidsfördriv
|
hur ska jag lägga upp det: såhär testade jag men inget hände:
Kod:
<?php $con = mysql_connect("localhost","username","password"); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("databasen", $con); $num_points = 10;//hur många poäng användaren får för just den åtgärden han gjort. mysql_query ("UPDATE TABLE SET (credits=credits+$num_points) WHERE user=$userID;") ?> |
||
Svara med citat |
2008-11-16, 12:53 | #6 | ||
|
|||
Mycket flitig postare
|
Hur ser sql-queryn ut som du kör då?
|
||
Svara med citat |
2008-11-16, 13:02 | #7 | ||
|
|||
Klarade millennium-buggen
|
du måste självklart ändra sqlen så den passar ditt fall. Ändra TABLE till det tabellnamn du skall ändra på och fältet points till det namn "poängfältet" har (måste vara en form av int) samt userid-fältnamn
|
||
Svara med citat |
2008-11-16, 13:05 | #8 | ||
|
|||
Banned
|
Byt ut
mysql_query ("UPDATE TABLE SET (credits=credits+$num_points) WHERE user=$userID;") mot mysql_query ("UPDATE ##TABELLENS NAMN## SET (credits=credits+$num_points) WHERE user=$userID;") |
||
Svara med citat |
2008-11-16, 13:51 | #9 | ||
|
|||
Har WN som tidsfördriv
|
e det fortfarande något fel?? för det funker inte :huh:
Kod:
<?php $con = mysql_connect("localhost","användarnamn","lösen"); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("databasnamn", $con); $num_points = 10;//hur många poäng användaren får för just den åtgärden han gjort. mysql_query ("UPDATE credits SET (credits=credits+10) WHERE user=$userid;") ?> |
||
Svara med citat |
2008-11-16, 14:16 | #10 | ||
|
|||
Klarade millennium-buggen
|
heter både tabellen och fältet "credits"?
|
||
Svara med citat |
Svara |
|
|