Hallo Leute,
ich bin für unseren Sportverein eine Homepage am erstellen. Die soll auch eine aktuelle Ligatabelle / Ergebnisse (nur unseres Vereins) und einen Spielplan enthalten.
Die Datenbank hierzu besteht aus 2 Tabellen:
Verein
Spiele
Alle Vereine sind bereits in der Datenbank eingetragen! Nun habe ich einige Fragen bei denen ich nicht ganz weiter komme...
Ich habe eine Ligatabelle mit folgenden Code erstellt:
Meine Frage wäre, wie ich in der erstellten Tabelle die aktuelle Platzierung und den dazugehörigen Vereinsnamen ausgeben kann****?
Meine nächsten Fragen wären, wie ich alle Spiele am einfachsten in die Datenbank schreibe und daraus einen Spielplan erstellen kann?
Ich hoffe Ihr könnt mir weiterhelfen, denn solangsam bin ich etwas am verzweifeln
LG Andreas
ich bin für unseren Sportverein eine Homepage am erstellen. Die soll auch eine aktuelle Ligatabelle / Ergebnisse (nur unseres Vereins) und einen Spielplan enthalten.
Die Datenbank hierzu besteht aus 2 Tabellen:
Verein
Code:
CREATE TABLE `vereine` (
`verein_id` INT(11) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(64) COLLATE latin1_general_cs NOT NULL DEFAULT '',
PRIMARY KEY (`verein_id`)
);
Spiele
Code:
CREATE TABLE `spiele` (
`spiel_id` INT(11) NOT NULL AUTO_INCREMENT,
`spieltag` INT(11) NOT NULL DEFAULT '0',
`heim_id` INT(11) NOT NULL DEFAULT '0',
`gast_id` INT(11) NOT NULL DEFAULT '0',
`heim_tore` INT(11) NOT NULL DEFAULT '0',
`gast_tore` INT(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`spiel_id`)
);
Alle Vereine sind bereits in der Datenbank eingetragen! Nun habe ich einige Fragen bei denen ich nicht ganz weiter komme...
Ich habe eine Ligatabelle mit folgenden Code erstellt:
PHP:
<?php
$abfrage = 'SELECT
`v`.*,
COUNT(`s`.`spiel_id`) AS `spiele_gesamt`,
SUM(
IF(
(`v`.`verein_id` = `s`.`heim_id` AND `s`.`heim_tore` > `s`.`gast_tore`) OR
(`v`.`verein_id` = `s`.`gast_id` AND `s`.`gast_tore` > `s`.`heim_tore`),
1, 0
)
) AS `siege`,
SUM(
IF(`s`.`heim_tore` = `s`.`gast_tore`, 1, 0)
) AS `unentschieden`,
SUM(
IF(
(`v`.`verein_id` = `s`.`heim_id` AND `s`.`heim_tore` < `s`.`gast_tore`) OR
(`v`.`verein_id` = `s`.`gast_id` AND `s`.`gast_tore` < `s`.`heim_tore`),
1, 0
)
) AS `niederlagen`,
SUM(
IF(`v`.`verein_id` = `s`.`heim_id`, `s`.`heim_tore`, 0) +
IF(`v`.`verein_id` = `s`.`gast_id`, `s`.`gast_tore`, 0)
) AS `tore`,
SUM(
IF(`v`.`verein_id` = `s`.`heim_id`, `s`.`gast_tore`, 0) +
IF(`v`.`verein_id` = `s`.`gast_id`, `s`.`heim_tore`, 0)
) AS `gegentore`,
COALESCE(
SUM(
IF(`v`.`verein_id` = `s`.`heim_id`, `s`.`heim_tore`, -`s`.`heim_tore`) +
IF(`v`.`verein_id` = `s`.`gast_id`, `s`.`gast_tore`, -`s`.`gast_tore`)
), 0
) AS `tordifferenz`,
SUM(
IF(
(`v`.`verein_id` = `s`.`heim_id` AND `s`.`heim_tore` > `s`.`gast_tore`) OR
(`v`.`verein_id` = `s`.`gast_id` AND `s`.`gast_tore` > `s`.`heim_tore`),
3, 0
) +
IF(`s`.`heim_tore` = `s`.`gast_tore`, 1, 0)
) AS `punkte`
FROM
`vereine` `v`
LEFT JOIN
`spiele` `s` ON (`v`.`verein_id` IN (`s`.`heim_id`, `s`.`gast_id`))
GROUP BY
`verein_id`
ORDER BY
`punkte` DESC,
`tordifferenz` DESC,
`tore` DESC';
if(!$season_table = $mysqli->query($abfrage)) {
die($mysqli->error);
}
echo '<table class="season_table table table-bordered">
<thead>
<tr>
<th>Platz</th>
<th>Verein</th>
<th>Spiele</th>
<th>S</th>
<th>N</th>
<th>U</th>
<th>Tore</th>
<th>TD</th>
<th>Punkte</th>
</tr>
</thead>';
while ($row = $season_table->fetch_object()) {
echo '<tbody>
<tr>
<td> </td>
<td> </td>
<td>'. $row->spiele_gesamt .'</td>
<td>'. $row->siege .'</td>
<td>'. $row->unentschieden .'</td>
<td>'. $row->niederlagen .'</td>
<td>'. $row->tore .' : '. $row->gegentore .'</td>
<td>'. $row->tordifferenz .'</td>
<td>'. $row->punkte .'</td>
</tr>
</tbody>';
}
echo '</table>';
?>
Meine Frage wäre, wie ich in der erstellten Tabelle die aktuelle Platzierung und den dazugehörigen Vereinsnamen ausgeben kann****?
Meine nächsten Fragen wären, wie ich alle Spiele am einfachsten in die Datenbank schreibe und daraus einen Spielplan erstellen kann?
Ich hoffe Ihr könnt mir weiterhelfen, denn solangsam bin ich etwas am verzweifeln

LG Andreas