Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: MySQL apuja

WKoA [13.04.2014 17:50:18]

#

Eli nyt sylttää todenteolla, joten apuja kaivataan.

Siis MySQL taulu "Pelit" sisältää seuraavaa:

pelaajaid peli-id turnaus-id pisteet

101 1011 1 2
103 1011 1 4
101 1012 1 1
101 1013 1 3
107 1012 1 1
107 1015 2 1

Ja tuosta taulusta pitäisi saada mysql haulla toteutettuna saada TOP lista ulos parhaiden pelaajaid:den osalta. Eli jokaisen pelaajaid:n pisteet lasketaan siten että turnaus-id on 1.

Eli output pitäisi näyttää sitten tältä:
pelaajaid pisteet
101 6
103 4
107 1

Kiitos jo etukäteen vastauksista ja avuista jälleen :)


EDIT:
Ratkaisu löytyikin helposti tuolta: http://stackoverflow.com/questions/15048887/mysql-group-by-and-sum-total-value-of-other-column

Mutta vielä kysymys, eli kun saan pelaajaid:t lyötyä PHP:llä vaikkapa echo $pelaajaid; koodilla, niin kuinka saan pisteet printattua ulos?

Lebe80 [13.04.2014 22:57:17]

#

echo $row["pisteet"];

https://www.php.net/manual/en/function.mysql-fetch-assoc.php

// sun kyselys tilalle
$result = mysql_query("SELECT pelaajaid, pisteet FROM mytable");

while ($row = mysql_fetch_assoc($result)) {
    echo $row["pisteet"];
}

Tai mikäli käytössä on pdo (yms.) löytyy vastaavanlainen funktio kuin vanhentuneesta mysql_ -funtioista.

The Alchemist [13.04.2014 23:20:40]

#

Putkalaisten pitäisi jo pikkuhiljaa oppia hyväksymään se fakta, että mysql-laajennus on pois php:stä ja siksi on myös turha linkata vanhentuneisiin dokumentaatioihin.

Lebe80 [13.04.2014 23:37:15]

#

The Alchemist kirjoitti:

Putkalaisten pitäisi jo pikkuhiljaa oppia hyväksymään se fakta, että mysql-laajennus on pois php:stä ja siksi on myös turha linkata vanhentuneisiin dokumentaatioihin.

no aloituspoustaaja ei kertonut, miten hän sen oli tehnyt, joten copy/pastesin mieluummin suoran koodin ottamatta sen enempää kantaa käytettävään laajennukseen (vastasin siis echo $row["pisteet]", mikä olisi tuskin yksistään toiminut vastauksena ilman jonkin sortin esimerkkiä, mistä kyseinen muuttuja juontaa juurensa).


edit:
The Alchemist: sinähän voisitkin pistää vaikka pdo-esimerkin vastauksena, niin avautumisesi sijaan tulisi ihan suoraan toimiva ratkaisu.

The Alchemist [14.04.2014 07:52:34]

#

Vaihtoehtoja kun on pdo:n lisäksi mysqli ja hän saattaa jopa vahingossa käyttää tuota vanhentunutta mysql-rajapintaakin, niin en minä ala arvailla, että mitä ihmeen rajapintaa ap mahtaa käyttää. Huomautin vain siitä, ettei meidän ainakaan pitäisi oletuksena tuputtaa mitään vanhentunutta ja jossain mielessä vaarallistakin paskaa.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta