Auto klassement
Wesley Bekaert
18/11/2012 11:24:17Ik ben al een tijdje aan het googlen om een systeem te vinden, maar tot nu toe heb ik niets gevonden.
Het komt er op neer dat ik in een database alle voetbalwedstrijden steek. Ieder weekend geef ik dan in de database de score in van de matchen van dat weekend. Door dit in te vullen zou ik een systeem willen die dan automatisch een klassement opmaakt.
Bestaat er hier iets voor? Of moet ik een bepaalde term typen in Google om dit te zoeken?
Graag uw hulp
Dank bij voorbaat
Het komt er op neer dat ik in een database alle voetbalwedstrijden steek. Ieder weekend geef ik dan in de database de score in van de matchen van dat weekend. Door dit in te vullen zou ik een systeem willen die dan automatisch een klassement opmaakt.
Bestaat er hier iets voor? Of moet ik een bepaalde term typen in Google om dit te zoeken?
Graag uw hulp
Dank bij voorbaat
PHP hulp
28/11/2024 18:26:08Eddy E
18/11/2012 11:32:41Ik googlede op "soccer competition php system" en vond uiteraard meer dan 185.000.000 resultaten:
2 hit: http://www.programmersheaven.com/download/54051/Download.aspx
2 hit: http://www.programmersheaven.com/download/54051/Download.aspx
Ja daar bestaat iets voor nl een query:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
SELECT
t.team_id,
t.team_name,
COUNT(r.id) AS matches_played,
SUM(r.points) AS total_points,
SUM(r.gls_for) AS total_for,
SUM(r.gls_against) AS total_against
FROM
teams AS t
LEFT JOIN
(
SELECT
home_id AS id,
home_score AS gls_for,
away_score AS gls_against,
IF(home_score = away_score, 1, IF(home_score > away_score, 3, 0)) AS points
FROM
matches
WHERE
home_score IS NOT NULL
UNION ALL
SELECT
away_id AS id,
away_score AS gls_for,
home_score AS gls_against,
IF(home_score = away_score, 1, IF(home_score > away_score, 0, 3)) AS points
FROM
matches
WHERE
home_score IS NOT NULL
) AS r
ON
t.team_id = r.id
GROUP BY
t.team_id, t.team_name
ORDER BY
total_points DESC, matches_played, (total_for - total_against) DESC
t.team_id,
t.team_name,
COUNT(r.id) AS matches_played,
SUM(r.points) AS total_points,
SUM(r.gls_for) AS total_for,
SUM(r.gls_against) AS total_against
FROM
teams AS t
LEFT JOIN
(
SELECT
home_id AS id,
home_score AS gls_for,
away_score AS gls_against,
IF(home_score = away_score, 1, IF(home_score > away_score, 3, 0)) AS points
FROM
matches
WHERE
home_score IS NOT NULL
UNION ALL
SELECT
away_id AS id,
away_score AS gls_for,
home_score AS gls_against,
IF(home_score = away_score, 1, IF(home_score > away_score, 0, 3)) AS points
FROM
matches
WHERE
home_score IS NOT NULL
) AS r
ON
t.team_id = r.id
GROUP BY
t.team_id, t.team_name
ORDER BY
total_points DESC, matches_played, (total_for - total_against) DESC
Gewijzigd op 18/11/2012 15:08:54 door Ger van Steenderen