<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Games</title>
<link href="css/stijl.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="main">
<?php
setlocale(LC_ALL,'nl_NL'); //Stelt de locale-instellingen in op Nederlands voor datum-, tijd-, getal- en valutaformaten
//include de menubalk op deze pagina met home, games, leden
include('menu.php');
?>
<H1>Games</H1>
<?php
//zorgt ervoor dat alle info van de verbinding met database die db.php maakt kan worden gebruikt in alle code op dit bestand.
// Zorgt ervoor dat alle informatie en functies voor de databaseverbinding uit db.php beschikbaar zijn in dit bestand.
include('db.php');
//als er een waarde zit in de array $_GET met sleutel genre_id (in het adres)
//De code controleert of er een waarde aanwezig is in de $_GET-array met de sleutel genre_id en of deze waarde een numerieke waarde is.
if(is_numeric($_GET['genre_id'])){
//genre_id opslaan
$genre_id = $_GET['genre_id'];
//sql query om genrenaam op te halen
$query = "SELECT naam from genres where genre_id = $genre_id";
//query uitvoeren
$result = mysqli_query($db, $query) or die(mysqli_error($db). ": $query");
//1 record ophalen
$row = mysqli_fetch_array($result);
//Genrenaam laten zien
echo "<h2>Genre: $row[naam]</h2>\n";
//sql query maken voor alle games van dat genre. Wordt later uitgevoerd(onderaan pas).
$querygames = "SELECT *
from games, gamegenres
where games.game_id = gamegenres.game_id
and gamegenres.genre_id = $genre_id
order by naam ASC";
}
//als er een waarde zit in de array $_GET met sleutel platform_id (in het adres)
//De code controleert of er een waarde aanwezig is in de $_GET-array met de sleutel platform_id en of deze waarde een numerieke waarde is.
elseif($_GET['platform_id']){
//platform_id opslaan
$platform_id = $_GET['platform_id'];
//sql query om platformnaam op te halen
$query = "SELECT naam from platformen where platform_id = $platform_id";
//query uitvoeren
$result = mysqli_query($db, $query) or die(mysqli_error($db). ": $query");
//1 record ophalen
$row = mysqli_fetch_array($result);
//Platformnaam laten zien
echo "<h2>Platform: $row[naam]</h2>\n";
//sql query om alle records van games op te halen en een verbinding te leggen tussen de tabellen 'games' en 'platformgames'.
//De query haalt alleen de games op die overeenkomen met een specifiek platform_id, en sorteert de resultaten alfabetisch (door ASC) op naam.
$querygames = "SELECT *
from games, platformgames
where games.game_id = platformgames.game_id
and platformgames.platform_id = $platform_id
order by naam ASC";
}
//als er een waarde zit in de array $_GET met sleutel studio_id (in het adres)
//De code controleert of er een waarde aanwezig is in de $_GET-array met de sleutel studio_id en of deze waarde een numerieke waarde is.
elseif($_GET['studio_id']){
//studio_id opslaan
$studio_id = $_GET['studio_id'];
//sql query om alles van studios op te halen
$query = "SELECT * from studios where studio_id = $studio_id";
//query uitvoeren
$result = mysqli_query($db, $query) or die(mysqli_error($db). ": $query");
//1 record ophalen
$row = mysqli_fetch_array($result);
//Studionaam laten zien en het een class genaamd 'subtitel' geven die in css eigenschappen krijgt.
echo "<div class='subtitel'>Studio: $row[naam]</div>\n";
//weergeven van land, oprichtdatum studio, aantal ontwikkelaars en eigenaar.
echo "<div>Land: $row[land]</div>";
echo "<div>Sinds: $row[datum]</div>";
echo "<div>Aantal ontwikkelaars: $row[ontwikkelaars]</div>";
echo "<div>Eigenaar: $row[eigenaar]</div>\n</a>";
//sql query om alle records van games op te halen en een verbinding te leggen tussen de tabellen 'games' en 'studiogames'.
//De query haalt alleen de games op die overeenkomen met een specifieke studio(studio_id), en sorteert de resultaten alfabetisch (door ASC) op naam.
$querygames = "SELECT *
from games, studiogames
where games.game_id = studiogames.game_id
and studiogames.studio_id = $studio_id
order by naam ASC";
}
else{ //als geen genre_id, geen studio_id en geen platform_id dan sql query om alle games ophalen
//query voor alle game ophalen
$querygames = "SELECT * from games
order by naam ASC";
}
//query uitvoeren
$result = mysqli_query($db, $querygames) or die(mysqli_error($db).": $querygames");
//games 1 voor 1 ophalen en laten zien als link naar gamedetails, met gameid in het adres
while($row = mysqli_fetch_array($result)){
//dit haalt de gemmidelde rating op met het game_id van de game die net opgehaald is
$querygem = "SELECT round(avg(rating), 1) as rating
from games, gamebezit, reviews
where games.game_id = gamebezit.game_id
and games.game_id = reviews.game_id
and games.game_id = $row[game_id]";
//query uitvoeren
$resultgem = mysqli_query($db, $querygem) or die(mysqli_error($db) . ": $querygem");
//1 record ophalen
$rowgem = mysqli_fetch_array($resultgem);
//laat een link zien naar gamedetails.php, met het game_id toegevoegd aan het adres
//laat ook afbeeldingen van de games zien waarvan bestandsnaam het bijbehorend game_id heeft.
//ook is er een class aangemaakt, waar in css dan atributen aan de afbeeldingen worden gegeven
//laat de naam(als link), leeftijdscategorie en rating(als link) zien
echo "<div><a href='gamedetails.php?game_id=$row[game_id]'>
<img class='gamepaginaafbeeldingen' src='afbeeldingen/$row[game_id].jpg' align='absmiddle'>
$row[naam]</a> | $row[leeftijd]+ | <a href='reviews.php?game_id=$row[game_id]'>$rowgem[rating]/10</a></div>";
}
?>
</div>
</body>
</html>