<?php require_once("../config.php"); require_once("../lib/attributes.php"); require_once("functions.php"); $numLand=5; // NRW $numRegbez=(isset($_GET['regbez'])) ? (int)$_GET['regbez'] : 1; $numKreis=(isset($_GET['kreis'])) ? (int)$_GET['kreis'] : 1; $numGemeinde=(isset($_GET['gemeinde'])) ? (int)$_GET['gemeinde'] : 1; $numJahr=$numLatestYear; // Name, Population und Fläche der Gemeinde $result= $db->prepare("SELECT * FROM community WHERE ULAND=:land AND UREGBEZ=:regbez AND UKREIS=:kreis AND UGEMEINDE=:gemeinde"); $result->bindParam(":land",$numLand); $result->bindParam(":regbez",$numRegbez); $result->bindParam(":kreis",$numKreis); $result->bindParam(":gemeinde",$numGemeinde); $result->execute(); if ($row = $result->fetch(PDO::FETCH_ASSOC)) { $strName=$row['Name']; $numFlaeche=$row['Flaeche']; $numPopulation=$row['Einwohner']; $numRegbez=$row['UREGBEZ']; $numKreis=$row['UKREIS']; $numGemeinde=$row['UGEMEINDE']; } else {exit;} $strLocation=" AND ULAND=$numLand AND UREGBEZ=$numRegbez AND UKREIS=$numKreis AND UGEMEINDE=$numGemeinde "; $resultUnfallzahlen = get_unfallzahlen($numJahr,$strLocation); $resultUnfallart = get_unfallart($numJahr,$strLocation); $resultUnfalltyp = get_unfalltyp($numJahr,$strLocation); $resultBeteiligte = get_beteiligte($numJahr,$strLocation); $resultVerlauf = get_verlauf($strLocation); $numGesamt=0; ?> <!DOCTYPE html> <html lang="de"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Fahrrad-Unfallstatistik NRW</title> <link rel="stylesheet" href="../css/bootstrap.min.css"/> <script src="../js/jquery.min.js"></script> <script src="../js/bootstrap.min.js"></script> <script src="../js/highcharts.js"></script> <style> .rechts {text-align:right;background-color:#eee;} .l {border-left: 1px solid black; } </style> </head> <body> <?php include("navbar.php"); ?> <div class="container" style="margin-top:4em;"> <h1>Fahrradunfälle in <?=$strName?></h2> <p>Einwohnerzahl: <?=$numPopulation?> Fläche: <?=$numFlaeche?> km<sup>2</sup></p> <!-- Unfallverlauf --> <div class="row"> <div class="col-5"> <h4>Unfallverlauf von <?=$numLatestYear?> bis <?=$numStartYear?></h4> <table class='table table-sm'> <tr><th></th><th>2022</th><th>2021</th><th>2020</th><th>2019</th></tr> <tr><td><?= $arrCategory[1]?></td><?= get_row($resultVerlauf,1) ?></tr> <tr><td><?= $arrCategory[2]?></td><?= get_row($resultVerlauf,2) ?></tr> <tr><td><?= $arrCategory[3]?></td><?= get_row($resultVerlauf,3) ?></tr> <tr><th>Gesamt</th><?= get_row($resultVerlauf,0) ?></tr> </table> </div> <div class="col-7"> <div id="c_unfallverlauf"></div> </div> </div> <!-- Unfallzahlen --> <div class="row"> <div class="col-5"> <h4>Unfallzahlen <?=$numJahr?></h4> <table class="table table-sm"> <?php //DEBUG echo "<pre>"; print_r($resultUnfallzahlen);echo "</pre>"; $numGesamt=0; foreach ($resultUnfallzahlen as $row) { echo "<tr><td>".$arrCategory[$row['UKATEGORIE']]."</td><td>".$row['anz']."</td></tr>\n"; $numGesamt+=$row['anz']; } ?> <tr><th>Gesamt</th><td><strong><?=$numGesamt?></strong></td></tr> </table> <table class="table table-sm"> <tr><th>Quote pro Tausend Einwohner</th><td><?= round($numGesamt/$numPopulation*1000,2) ?></td></tr> <tr><th>Quote pro Fläche</th><td><?= round($numGesamt/$numFlaeche,1) ?> /km<sup>2</sup></td></tr> </table> </div> <div class="col-7"> <div id="c_unfallzahlen"></div> </div> </div> <!-- Unfallbeteilgte --> <div class="row"> <div class="col-5"> <h4>Unfallbeteiligte</h4> <table class='table table-sm'> <?php // DEBUG: echo "<pre>"; print_r($resultBeteiligte);echo "</pre>"; foreach ($resultBeteiligte as $key => $numCount) { echo "<tr><td>".$arrBeteiligte[$key]."</td><td>".$numCount."</td></tr>\n"; } ?> </table> </div> <div class="col-7"> <div id="c_unfallbeteiligte"></div> </div> </div> <!-- Unfalltyp --> <div class="row"> <div class="col-5"> <h4>Unfalltyp</h4> <table class='table table-sm'> <?php foreach ($resultUnfalltyp as $row) { echo "<tr><td>".$arrUnfalltyp[$row['UTYP1']]."</td><td>".$row['anz']."</td></tr>\n"; } ?> </table> </div> <div class="col-7"> <div id="c_unfalltyp"></div> </div> </div> <!-- Unfallarten --> <div class="row"> <div class="col-5"> <h4>Unfallart</h4> <table class='table table-sm'> <?php foreach ($resultUnfallart as $row) { echo "<tr><td>".$arrUnfallart[$row['UART']]."</td><td>".$row['anz']."</td></tr>\n"; } ?> </table> </div> <div class="col-7"> <div id="c_unfallarten"></div> </div> </div> </div> </body> <script> Highcharts.chart('c_unfallzahlen', { chart: { plotBackgroundColor: null, plotBorderWidth: null, plotShadow: false, type: 'pie' }, title: { text: 'Unfallzahlen', align: 'center' }, tooltip: { pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>' }, accessibility: { point: { valueSuffix: '%' } }, plotOptions: { pie: { allowPointSelect: true, cursor: 'pointer', dataLabels: { enabled: true, format: '<b>{point.name}</b>: {point.percentage:.1f} %' } } }, series: [{ name: 'Unfallzahlen', colorByPoint: true, data: <?= get_series($resultUnfallzahlen,$arrCategory,"UKATEGORIE") ?> }] }); Highcharts.chart('c_unfallarten', { chart: { plotBackgroundColor: null, plotBorderWidth: null, plotShadow: false, type: 'pie' }, title: { text: 'Unfallarten', align: 'center' }, tooltip: { pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>' }, accessibility: { point: { valueSuffix: '%' } }, plotOptions: { pie: { allowPointSelect: true, cursor: 'pointer', dataLabels: { enabled: true, format: '<b>{point.name}</b>: {point.percentage:.1f} %' } } }, series: [{ name: 'Unfallarten', colorByPoint: true, data: <?= get_series($resultUnfallart,$arrUnfallart,"UART") ?> }] }); Highcharts.chart('c_unfalltyp', { chart: { plotBackgroundColor: null, plotBorderWidth: null, plotShadow: false, type: 'pie' }, title: { text: 'Unfalltypen', align: 'center' }, tooltip: { pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>' }, accessibility: { point: { valueSuffix: '%' } }, plotOptions: { pie: { allowPointSelect: true, cursor: 'pointer', dataLabels: { enabled: true, format: '<b>{point.name}</b>: {point.percentage:.1f} %' } } }, series: [{ name: 'Unfallarten', colorByPoint: true, data: <?= get_series($resultUnfalltyp,$arrUnfalltyp,"UTYP1") ?> }] }); Highcharts.chart('c_unfallbeteiligte', { chart: { plotBackgroundColor: null, plotBorderWidth: null, plotShadow: false, type: 'pie' }, title: { text: 'Unfallbeteiligte', align: 'center' }, tooltip: { pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>' }, accessibility: { point: { valueSuffix: '%' } }, plotOptions: { pie: { allowPointSelect: true, cursor: 'pointer', dataLabels: { enabled: true, format: '<b>{point.name}</b>: {point.percentage:.1f} %' } } }, series: [{ name: 'Unfallarten', colorByPoint: true, data: <?= get_series_beteiligte($resultBeteiligte,$arrBeteiligte) ?> }] }); Highcharts.chart('c_unfallverlauf', { chart: { type: 'column' }, title: { text: 'Verlauf der Fahrradunfälle', align: 'center' }, xAxis: { categories: ['2022','2021','2020','2019'] }, yAxis: { min: 0, title: { text: 'Jahr' }, stackLabels: { enabled: true } }, legend: { align: 'left', x: 400, verticalAlign: 'top', y: 30, floating: true, backgroundColor: Highcharts.defaultOptions.legend.backgroundColor || 'white', borderColor: '#CCC', borderWidth: 1, shadow: false }, tooltip: { headerFormat: '<b>{point.x}</b><br/>', pointFormat: '{series.name}: {point.y}<br/>Total: {point.stackTotal}' }, plotOptions: { column: { stacking: 'normal', dataLabels: { enabled: true } } }, series: <?=get_series_verlauf($resultVerlauf,$arrCategory)?> }); </script> </html>