68 lines
1.9 KiB
PHP
68 lines
1.9 KiB
PHP
<?php
|
|
session_start();
|
|
ini_set('display_errors', 1);
|
|
ini_set('display_startup_errors', 1);
|
|
error_reporting(E_ALL);
|
|
$root = realpath($_SERVER["DOCUMENT_ROOT"]);
|
|
require "$root/database/credentials.php";
|
|
// Connect the database
|
|
try {
|
|
$db = new PDO("mysql:host=$host;dbname=$database;charset=utf8",
|
|
$user,
|
|
$password,
|
|
array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
|
|
));
|
|
} catch (Exception $e) {
|
|
die("Error : ".$e->getMessage());
|
|
}
|
|
|
|
$req = $db->prepare('SELECT id, recordist_name, file_name, license, species, sound_type, date, time FROM `records` WHERE species="unknown" ORDER BY `entry_timestamp` ASC LIMIT 1');
|
|
$req->execute();
|
|
$result = $req->fetchAll();
|
|
?>
|
|
|
|
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Explore | Chiro - Canto</title>
|
|
<link rel="stylesheet" type="text/css" href="/styles/style.css">
|
|
</head>
|
|
<?php
|
|
include("$root/analytics/matomo.php");
|
|
?>
|
|
<body>
|
|
<?php include("$root/menu.php");?>
|
|
<?php include("$root/header.php");?>
|
|
<section>
|
|
<h3>Mystery recording</h3>
|
|
<?php
|
|
foreach ($result as $row)
|
|
{
|
|
?>
|
|
<div class="sound">
|
|
<h3><?=$row['file_name']?></h3>
|
|
<h4><em><?=$row['species']?></em></h4>
|
|
<p>Recorded on <?=$row['date']?> at <?=$row['time']?></p>
|
|
<?php
|
|
if (file_exists($root."/storage/spectrograms/".$row['file_name'].'.png'))
|
|
{
|
|
?>
|
|
<img id="spectrogram" src="<?="/storage/spectrograms/".$row['file_name'].'.png'?>" alt="bat sound spectrogram">
|
|
<?php
|
|
}
|
|
?>
|
|
<br>
|
|
<audio src="<?="/storage/records/".$row['file_name']?>" controls></audio>
|
|
<p><?=$row['license']?> <?=$row['recordist_name']?></p>
|
|
</div>
|
|
<?php
|
|
}
|
|
?>
|
|
</section>
|
|
<?php include("$root/footer.php");?>
|
|
</body>
|
|
<script src="/scripts/script.js"></script>
|
|
</html>
|