spalten aus tabelle auslesen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
angriff
auffangen
beliebigen code
beschreiben
beurteilen
bewohner
code
http
jetziger code
konkreten zweck
mechanismus
schnelle antwort
schutz
semikolon
spalte
statement
tabelle
tun
url
zahl
-
hallöchen!
ich möchte gerne aus einer tabelle die zahlen einer spalte zusammenzählen und anzeigen lassen.
ich hab schon einige versuche hinter mir, mein problem is das mehere user in der tabelle sind und die zahlen aller user gezählt werden. ich möchte aber das jeder user nur seine eigenen zahlen sieht.
is jetzt total doof erklärt, aber ich weiß nicht wie ich es besser beschreiben könnte.
ich bitte euch um hilfe
mfg willy -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Wenn ich das recht verstehe sollen Zahlen aus einer Spalte in der Tabelle zusammengezählt werde. Dies funktioniert mit:
SUM('column_name')
http://www.tizag.com/mysqlTutorial/mysqlsum.php
http://www.w3schools.com/sql/sql_func_sum.asp
Wenn du jetzt nur jeweils Werte eines einzigen Users zusammenzählen möchtest, dann hast du höchstwahrscheinlich in der Tabelle eine Spalte, welche die User-ID der Benutzer enthält. Du schreibst also folglich einfach:
SELECT SUM('column_name') FROM 'tabe_name' WHERE 'user_id' = 'x'
-
vielen dank für die schnelle antwort
habs jetzt so hinbekommen
$bewohner = mysql_query('Select sum(bewohner) from gebaude_depot where userid=\''.$user['id'].'\'');
$bewohner = mysql_result($bewohner,0); -
Standardantwort zu mysql: Geh' gleich zu mysqli oder PDO über. Mysql_* ist veraltet und fliegt raus.
-
muellerlukas schrieb:
Standardantwort zu mysql: Geh' gleich zu mysqli oder PDO über. Mysql_* ist veraltet und fliegt raus.
Bei 1und 1 kann man bereits Version 7 testen. -
Und wenn der Code irgendwo produktiv eingesetzt werden soll: Dein jetziger Code ist sehr sensibel gegenüber XSS-Angriffen. Überlege dir mal, wenn jetzt als user_id:
eingesetzt würde. Ja, hinter dem Semikolon könnte jeder irgendeinen beliebigen Code ausführen.x; ...
Deshalb, wenn du dich schon mit mysqli beschäftigst und es "richtig" machen willst: Prepared Statements
Lg, Franz ;) -
fs-host schrieb:
Und wenn der Code irgendwo produktiv eingesetzt werden soll: Dein jetziger Code ist sehr sensibel gegenüber XSS-Angriffen. Überlege dir mal, wenn jetzt als user_id:
eingesetzt würde. Ja, hinter dem Semikolon könnte jeder irgendeinen beliebigen Code ausführen.x; ...
Deshalb, wenn du dich schon mit mysqli beschäftigst und es "richtig" machen willst: Prepared Statements
Lg, Franz ;)
Ein einfaches intval($id); würde es aber auch tun für diesen konkreten Zweck (+ Fehler auffangen). Dies kann man sich sogar sparen, wenn man bspw. nicht vom Client empfängt sondern vorher anhand des Benutzernamens die ID aus der Datenbank entnimmt (Wobei natürlich bei diesem Mechanismus ein Hack-Schutz eingebaut werden muss). Um die Sicherheit zu beurteilen, muss man eigentlich immer einen größeren Projektrahmen betrachten. Trotzdem empfiehlt sich natürlich generell der einsatz von Prepared Statements.
mfg
Jonas -
Damit auch die letzten von MySQL bequem umsteigen können habe ich mal einen PDO Handler veröffentlicht.
Unter coc.webmeteor24.de/funktionen/datenbankzugriff-auf-mysql kann ihn jeder nutzen und downloaden.
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage