display huge graphics
This commit is contained in:
parent
72ec45df44
commit
c6e60e6579
280
html/index.php
280
html/index.php
|
@ -1,73 +1,227 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="refresh" content="60">
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.6.0/Chart.min.js"></script>
|
||||
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
|
||||
<title>Info an Coronavirus</title>
|
||||
</head>
|
||||
<body>
|
||||
<?php
|
||||
include '../config.php';
|
||||
|
||||
$sql = "SELECT * FROM sites WHERE active=1";
|
||||
//grafik
|
||||
$sql = "SELECT scans.id, place, amount, time FROM `data` inner join scans on scans.id=data.scan WHERE place like 'Germany' group by amount order by time asc ";
|
||||
$stmt = $pdo->query($sql);
|
||||
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||
?>
|
||||
|
||||
echo '<table>';
|
||||
foreach ($pdo->query($sql) as $row){
|
||||
echo '<tr><td><a href="index.php?source='.$row['id'].'&type='.$row['type'].'">'.$row['title'].'</a></td><td>'.$row['link'].'</td></tr>';
|
||||
}
|
||||
<div class="container" style="height: 1000px; width: 100%; position: relative">
|
||||
<canvas id="germany-chart" style="height: 100%; width: 100%"></canvas>
|
||||
</div>
|
||||
|
||||
if (isset($_GET['source'])){
|
||||
if (!isset($_GET['time'])){
|
||||
$sql = "SELECT * FROM scans WHERE site=? order by id desc";
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->bindParam(1, $_GET['source']);
|
||||
$stmt->execute();
|
||||
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||
echo '<table>';
|
||||
foreach ($data as $row){
|
||||
echo '<tr><td><a href="index.php?source='.$_GET['source'].'&time='.$row['id'].'&type='.$_GET['type'].'">'.$row['time'].'</a></td></tr>';
|
||||
}
|
||||
echo '</table>';
|
||||
}else{
|
||||
if (isset($_GET['type'])){
|
||||
if ($_GET['type'] == 'csv'){
|
||||
$sql = "SELECT content FROM scans WHERE id=?";
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->bindParam(1, $_GET['time']);
|
||||
$stmt->execute();
|
||||
$csv = $stmt->fetchAll(PDO::FETCH_ASSOC)[0]['content'];
|
||||
$test = str_getcsv($csv, ",", "\"", "\\");
|
||||
echo '<pre>';
|
||||
var_dump($test);
|
||||
echo '</pre>';
|
||||
echo '<table>';
|
||||
for ($i = 0; $i < count($test); $i++){
|
||||
if ($i+1 % 12 == 0){
|
||||
echo '</tr><tr>';
|
||||
<script>
|
||||
let myChart = document.getElementById('germany-chart').getContext('2d');
|
||||
|
||||
// Global Options
|
||||
Chart.defaults.global.defaultFontFamily = 'Lato';
|
||||
Chart.defaults.global.defaultFontSize = 18;
|
||||
Chart.defaults.global.defaultFontColor = '#777';
|
||||
|
||||
let massPopChart = new Chart(myChart, {
|
||||
type:'bar', // bar, horizontalBar, pie, line, doughnut, radar, polarArea
|
||||
data:{
|
||||
labels:[
|
||||
<?php
|
||||
for ($i = 0 ; $i < count($data); $i++){
|
||||
if ($i == 0){
|
||||
echo "'".$data[$i]['time']."'";
|
||||
}else{
|
||||
echo ', \''.$data[$i]['time']."'";
|
||||
}
|
||||
|
||||
echo '<td>'.$test[$i].'</td>';
|
||||
}
|
||||
echo'<table>';
|
||||
}else{
|
||||
if ($_GET['type'] == 'html');
|
||||
$sql = "SELECT * FROM data WHERE scan=? order by amount desc";
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->bindParam(1, $_GET['time']);
|
||||
$stmt->execute();
|
||||
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||
echo '<table>';
|
||||
echo '<tr><th>id</th><th>Scan-No</th><th>Place</th><th>infected</th><th>dead</th><th>active</th><th>cured</th></tr>';
|
||||
foreach ($data as $row){
|
||||
echo '<tr>';
|
||||
echo '<td>'.$row['id'].'</td><td>'.$row['scan'].'</td><td><a href="laender.php?land='.$row['place'].'">'.$row['place'].'</a></td><td>'.$row['amount'].'</td><td>'.$row['deaths'].'</td><td>'.$row['active'].'</td><td>'.$row['cured'].'</td>';
|
||||
echo '</tr>';
|
||||
?>
|
||||
],
|
||||
datasets:[{
|
||||
label:'Anzahl',
|
||||
data:[
|
||||
<?php
|
||||
for ($i = 0 ; $i < count($data); $i++){
|
||||
if ($i == 0){
|
||||
echo "".$data[$i]['amount']."";
|
||||
}else{
|
||||
echo ', '.$data[$i]['amount']."";
|
||||
}
|
||||
}
|
||||
?>
|
||||
],
|
||||
//backgroundColor:'green',
|
||||
backgroundColor:[
|
||||
/*'rgba(255, 99, 132, 0.6)',
|
||||
'rgba(54, 162, 235, 0.6)',
|
||||
'rgba(255, 206, 86, 0.6)',
|
||||
'rgba(75, 192, 192, 0.6)',
|
||||
'rgba(153, 102, 255, 0.6)',
|
||||
'rgba(255, 159, 64, 0.6)',
|
||||
'rba(255, 99, 132, 0.6)'*/
|
||||
],
|
||||
borderWidth:1,
|
||||
borderColor:'#777',
|
||||
hoverBorderWidth:3,
|
||||
hoverBorderColor:'#000'
|
||||
}]
|
||||
},
|
||||
options:{
|
||||
responsive: false,
|
||||
maintainAspectRatio: false,
|
||||
title:{
|
||||
display:true,
|
||||
text:'Anzahl der Infektionsfälle in Deutschland',
|
||||
fontSize:25
|
||||
},
|
||||
legend:{
|
||||
display:true,
|
||||
position:'right',
|
||||
labels:{
|
||||
fontColor:'#000'
|
||||
}
|
||||
echo '</table>';
|
||||
},
|
||||
layout:{
|
||||
padding:{
|
||||
left:0,
|
||||
right:0,
|
||||
bottom:0,
|
||||
top:0
|
||||
},
|
||||
},
|
||||
tooltips:{
|
||||
enabled:true
|
||||
}
|
||||
}else{
|
||||
$sql = "SELECT * FROM data WHERE scan=?";
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->bindParam(1, $_GET['time']);
|
||||
$stmt->execute();
|
||||
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||
echo '<table>';
|
||||
foreach ($data as $row){
|
||||
echo '<tr><td>'.$row['place'].'</td><td>'.$row['amount'].'</td></tr>';
|
||||
}
|
||||
echo '</table>';
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
<?php
|
||||
|
||||
|
||||
//Tabelle
|
||||
$sql = "SELECT * FROM data where scan = (select MAX(scans.id) from scans inner join data on data.scan=scans.id where site=1) order by amount desc";
|
||||
echo '<h2>Fallzahlen in Deutschland - Nach Robert Koch Institut</h2>';
|
||||
echo '<table style="width: 50%">';
|
||||
echo '<tr><th>Platz</th><th>Land</th><th>kumulative Fallzahl</th></tr>';
|
||||
$i = 1;
|
||||
foreach ($pdo->query($sql) as $row){
|
||||
echo '<tr><td>'.$i.'</td><td>'.str_replace("D-", "", $row['place']).'</td><td>'.$row['amount'].'</td></tr>';
|
||||
$i++;
|
||||
}
|
||||
echo '</table>';
|
||||
|
||||
//grafik
|
||||
$sql = "SELECT scans.id, place, amount, time FROM `data` inner join scans on scans.id=data.scan WHERE place like '%total%' group by amount order by time asc ";
|
||||
$stmt = $pdo->query($sql);
|
||||
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||
?>
|
||||
|
||||
<div class="container" style="height: 1000px; width: 100%; position: relative">
|
||||
<canvas id="total-chart" style="width: 100%; height: 100%"></canvas>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
let my2ndChart = document.getElementById('total-chart').getContext('2d');
|
||||
|
||||
// Global Options
|
||||
Chart.defaults.global.defaultFontFamily = 'Lato';
|
||||
Chart.defaults.global.defaultFontSize = 18;
|
||||
Chart.defaults.global.defaultFontColor = '#777';
|
||||
|
||||
let massPopChart2 = new Chart(my2ndChart, {
|
||||
type:'bar', // bar, horizontalBar, pie, line, doughnut, radar, polarArea
|
||||
data:{
|
||||
labels:[
|
||||
<?php
|
||||
for ($i = 0 ; $i < count($data); $i++){
|
||||
if ($i == 0){
|
||||
echo "'".$data[$i]['time']."'";
|
||||
}else{
|
||||
echo ', \''.$data[$i]['time']."'";
|
||||
}
|
||||
}
|
||||
?>
|
||||
],
|
||||
datasets:[{
|
||||
label:'Anzahl',
|
||||
data:[
|
||||
<?php
|
||||
for ($i = 0 ; $i < count($data); $i++){
|
||||
if ($i == 0){
|
||||
echo "".$data[$i]['amount']."";
|
||||
}else{
|
||||
echo ', '.$data[$i]['amount']."";
|
||||
}
|
||||
}
|
||||
?>
|
||||
],
|
||||
//backgroundColor:'green',
|
||||
backgroundColor:[
|
||||
/*'rgba(255, 99, 132, 0.6)',
|
||||
'rgba(54, 162, 235, 0.6)',
|
||||
'rgba(255, 206, 86, 0.6)',
|
||||
'rgba(75, 192, 192, 0.6)',
|
||||
'rgba(153, 102, 255, 0.6)',
|
||||
'rgba(255, 159, 64, 0.6)',
|
||||
'rba(255, 99, 132, 0.6)'*/
|
||||
],
|
||||
borderWidth:1,
|
||||
borderColor:'#777',
|
||||
hoverBorderWidth:3,
|
||||
hoverBorderColor:'#000'
|
||||
}]
|
||||
},
|
||||
options:{
|
||||
responsive: false,
|
||||
maintainAspectRatio: false,
|
||||
title:{
|
||||
display:true,
|
||||
text:'Anzahl der Infektionsfälle Weltweit',
|
||||
fontSize:25
|
||||
},
|
||||
legend:{
|
||||
display:true,
|
||||
position:'right',
|
||||
labels:{
|
||||
fontColor:'#000'
|
||||
}
|
||||
},
|
||||
layout:{
|
||||
padding:{
|
||||
left:0,
|
||||
right:0,
|
||||
bottom:0,
|
||||
top:0
|
||||
},
|
||||
},
|
||||
tooltips:{
|
||||
enabled:true
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
<?php
|
||||
|
||||
$sql = "SELECT * FROM data where scan = (select MAX(scans.id) from scans inner join data on data.scan=scans.id where site=2) order by active desc limit 50";
|
||||
echo '<h2>Weltweite Daten - Top 50</h2>';
|
||||
echo '<table style="width: 100%">';
|
||||
echo '<tr><th>Platz</th><th>Land</th><th>Aktive Fälle</th><th>kumulative Fallzahl</th><th>geheilte</th><th>Todesfälle</th></tr>';
|
||||
$i = 1;
|
||||
foreach ($pdo->query($sql) as $row){
|
||||
echo '<tr><td>'.$i.'</td><td>'.$row['place'].'</td><td>'.$row['active'].'</td><td>'.$row['amount'].'</td><td>'.$row['cured'].'</td><td>'.$row['deaths'].'</td></tr>';
|
||||
$i++;
|
||||
}
|
||||
echo '</table>';
|
||||
?>
|
||||
</body>
|
||||
</html>
|
|
@ -1,18 +1,73 @@
|
|||
<?php
|
||||
include '../config.php';
|
||||
|
||||
echo 'Stand in Deutschland:';
|
||||
$sql = "SELECT * FROM sites WHERE active=1";
|
||||
|
||||
$sql = "SELECT id, place, amount FROM `data` WHERE scan=(SELECT MAX(id) FROM `scans` WHERE site=1) and place like 'D-%' ORDER BY amount DESC";
|
||||
echo '<table>';
|
||||
foreach ($pdo->query($sql) as $row){
|
||||
echo '<tr><td>'.str_replace("D-", "", $row['place']).'</td><td>'.$row['amount'].'</td></tr>';
|
||||
echo '<tr><td><a href="index.php?source='.$row['id'].'&type='.$row['type'].'">'.$row['title'].'</a></td><td>'.$row['link'].'</td></tr>';
|
||||
}
|
||||
echo '<table>';
|
||||
echo '<br><br>';
|
||||
$sql = "SELECT id, place, amount FROM `data` WHERE scan=(SELECT MAX(id) FROM `scans` WHERE site=2) ORDER BY amount DESC";
|
||||
echo '<table>';
|
||||
foreach ($pdo->query($sql) as $row){
|
||||
echo '<tr><td>'.$row['place'].'</td><td>'.$row['amount'].'</td></tr>';
|
||||
}
|
||||
echo '<table>';
|
||||
|
||||
if (isset($_GET['source'])){
|
||||
if (!isset($_GET['time'])){
|
||||
$sql = "SELECT * FROM scans WHERE site=? order by id desc";
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->bindParam(1, $_GET['source']);
|
||||
$stmt->execute();
|
||||
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||
echo '<table>';
|
||||
foreach ($data as $row){
|
||||
echo '<tr><td><a href="index.php?source='.$_GET['source'].'&time='.$row['id'].'&type='.$_GET['type'].'">'.$row['time'].'</a></td></tr>';
|
||||
}
|
||||
echo '</table>';
|
||||
}else{
|
||||
if (isset($_GET['type'])){
|
||||
if ($_GET['type'] == 'csv'){
|
||||
$sql = "SELECT content FROM scans WHERE id=?";
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->bindParam(1, $_GET['time']);
|
||||
$stmt->execute();
|
||||
$csv = $stmt->fetchAll(PDO::FETCH_ASSOC)[0]['content'];
|
||||
$test = str_getcsv($csv, ",", "\"", "\\");
|
||||
echo '<pre>';
|
||||
var_dump($test);
|
||||
echo '</pre>';
|
||||
echo '<table>';
|
||||
for ($i = 0; $i < count($test); $i++){
|
||||
if ($i+1 % 12 == 0){
|
||||
echo '</tr><tr>';
|
||||
}
|
||||
|
||||
echo '<td>'.$test[$i].'</td>';
|
||||
}
|
||||
echo'<table>';
|
||||
}else{
|
||||
if ($_GET['type'] == 'html');
|
||||
$sql = "SELECT * FROM data WHERE scan=? order by amount desc";
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->bindParam(1, $_GET['time']);
|
||||
$stmt->execute();
|
||||
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||
echo '<table>';
|
||||
echo '<tr><th>id</th><th>Scan-No</th><th>Place</th><th>infected</th><th>dead</th><th>active</th><th>cured</th></tr>';
|
||||
foreach ($data as $row){
|
||||
echo '<tr>';
|
||||
echo '<td>'.$row['id'].'</td><td>'.$row['scan'].'</td><td><a href="laender.php?land='.$row['place'].'">'.$row['place'].'</a></td><td>'.$row['amount'].'</td><td>'.$row['deaths'].'</td><td>'.$row['active'].'</td><td>'.$row['cured'].'</td>';
|
||||
echo '</tr>';
|
||||
}
|
||||
echo '</table>';
|
||||
}
|
||||
}else{
|
||||
$sql = "SELECT * FROM data WHERE scan=?";
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->bindParam(1, $_GET['time']);
|
||||
$stmt->execute();
|
||||
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||
echo '<table>';
|
||||
foreach ($data as $row){
|
||||
echo '<tr><td>'.$row['place'].'</td><td>'.$row['amount'].'</td></tr>';
|
||||
}
|
||||
echo '</table>';
|
||||
}
|
||||
}
|
||||
}
|
|
@ -43,7 +43,7 @@ foreach ($data as $scan){
|
|||
for ($i = 0; $i < $parts->length; $i++) {
|
||||
$country = array();
|
||||
$p2 = $parts[$i]->childNodes;
|
||||
$country[] = $p2[0]->textContent;
|
||||
$country[] = trim($p2[0]->textContent);
|
||||
/*for ($j=0; $j < $p2->length; $j++){
|
||||
var_dump($p2[$j]->textContent);
|
||||
}*/
|
||||
|
@ -52,6 +52,8 @@ foreach ($data as $scan){
|
|||
$deaths = $p2[$deathsCol]->textContent;
|
||||
$recovered = $p2[$recoveredCol]->textContent;
|
||||
$active = $p2[$activeCol]->textContent;
|
||||
//var_dump($activeCol);
|
||||
//var_dump($p2);
|
||||
$country[] = intval(str_replace(",", "", $p2[2]->textContent));
|
||||
$country[] =intval(str_replace(",", "", $deaths));
|
||||
$country[] =intval(str_replace(",", "", $active));
|
||||
|
|
Loading…
Reference in New Issue