Ikke helt - jeg vil gerne hente hele tabellen ud, ikke kun et enkelt number. De kolonner hvor number er identisk skal værdierne (matches, goals, etc) lægges sammen så jeg får en oversigt over alle spillernes samlede stats.
så må jeg ha misforstået noget. gider du prøve at skrive hele SELECT som du mener den skal se ud. og husk at jeg vil ha alle numbers, ikke kun én (WHERE number =...)
$query = "SELECT number, SUM(matches) AS matches, SUM(goals) AS goals, SUM(assists) AS assists, SUM(ycards) AS ycards, SUM(rcards) AS rcards FROM stats GROUP BY number ORDER BY SUM($_GET[sort]) DESC, number ASC";
Det jeg manglede var "AS ...." for at få fat i værdien. Hvis der er en nemmere måde end ovenstående lytter jeg gerne :)
Mange tak for hjælpen viperine - smider du et svar? :)
Det ser fornuftigt nok ud, lige bortset fra at du putter en $_GET værdi direkte ind i en SQL-forespørgsel. Det er du forhåbentlig klar over farerne ved?
SQL injection - den mest almindelige måde at ødelægge eller hacke mindre sider på, da mange stadig ikke tænker over det.
Enhver bruger kan ændre i en $_GET variabel, derfor putter du faktisk noget direkte ind i en SQL-streng, som enhver bruger kan ændre i uden problemer. Derved giver du alle mulighed for at afslutte den eksisterende SQL-streng, og sætte deres egen kode ind, som f.eks. kan slette databasen.
ALTID (med mindre man har meget god grund til andet) køre $_GET, $_POST og $_COOKIE variabler gennem funktionen mysql_real_escape_string() før de bruges i SQL.
F.eks.: $sort = mysql_real_escape_string($_GET['sort']); $sql = "SELECT ... ORDER BY $sort";
Synes godt om
Ny brugerNybegynder
Din løsning...
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.