diff --git a/scripts/play.php b/scripts/play.php index d63cbc7..0ea14f1 100644 --- a/scripts/play.php +++ b/scripts/play.php @@ -136,29 +136,12 @@ if(isset($_GET['bydate'])){ $date = $_GET['date']; session_start(); $_SESSION['date'] = $date; - if(isset($_GET['sort']) && $_GET['sort'] == "occurrences") { - $statement = $db->prepare("SELECT DISTINCT(Com_Name), COUNT(Com_Name) AS Count FROM detections WHERE Date == \"$date\" GROUP BY Com_Name ORDER BY COUNT(*) DESC"); - } elseif(isset($_GET['sort']) && $_GET['sort'] == "confidence") { - $statement = $db->prepare("SELECT Com_Name, Sci_Name, MAX(Confidence) as MaxConfidence FROM detections WHERE Date == \"$date\" GROUP BY Com_Name ORDER BY MaxConfidence DESC"); - } else { - $statement = $db->prepare("SELECT DISTINCT(Com_Name) FROM detections WHERE Date == \"$date\" ORDER BY Com_Name"); - } - ensure_db_ok($statement); - $result = $statement->execute(); + $result = fetch_species_array($_GET['sort'], $date); $view = "date"; #By Species } elseif(isset($_GET['byspecies'])) { - if(isset($_GET['sort']) && $_GET['sort'] == "occurrences") { - $statement = $db->prepare('SELECT DISTINCT(Com_Name), COUNT(Com_Name) AS Count FROM detections GROUP BY Com_Name ORDER BY COUNT(*) DESC'); - } elseif(isset($_GET['sort']) && $_GET['sort'] == "confidence") { - $statement = $db->prepare('SELECT Com_Name, Sci_Name, MAX(Confidence) as MaxConfidence FROM detections GROUP BY Com_Name ORDER BY MaxConfidence DESC'); - } else { - $statement = $db->prepare('SELECT DISTINCT(Com_Name) FROM detections ORDER BY Com_Name ASC'); - } - session_start(); - ensure_db_ok($statement); - $result = $statement->execute(); + $result = fetch_species_array($_GET['sort']); $view = "byspecies"; #Specific Species diff --git a/scripts/stats.php b/scripts/stats.php index f9188d7..ace20b8 100644 --- a/scripts/stats.php +++ b/scripts/stats.php @@ -10,40 +10,11 @@ ini_set('display_errors', 0); require_once 'scripts/common.php'; $home = get_home(); +$result = fetch_species_array($_GET['sort']); + $db = new SQLite3('./scripts/birds.db', SQLITE3_OPEN_READONLY); $db->busyTimeout(1000); -if(isset($_GET['sort']) && $_GET['sort'] == "occurrences") { - - $statement = $db->prepare('SELECT Date, Time, File_Name, Com_Name, COUNT(*), MAX(Confidence) FROM detections GROUP BY Com_Name ORDER BY COUNT(*) DESC'); - ensure_db_ok($statement); - $result = $statement->execute(); - - $statement2 = $db->prepare('SELECT Date, Time, File_Name, Com_Name, COUNT(*), MAX(Confidence) FROM detections GROUP BY Com_Name ORDER BY COUNT(*) DESC'); - ensure_db_ok($statement2); - $result2 = $statement2->execute(); - -} else if(isset($_GET['sort']) && $_GET['sort'] == "confidence") { - $statement = $db->prepare('SELECT Date, Time, File_Name, Com_Name, COUNT(*), MAX(Confidence) FROM detections GROUP BY Com_Name ORDER BY MAX(Confidence) DESC'); - ensure_db_ok($statement); - $result = $statement->execute(); - - $statement2 = $db->prepare('SELECT Date, Time, File_Name, Com_Name, COUNT(*), MAX(Confidence) FROM detections GROUP BY Com_Name ORDER BY MAX(Confidence) DESC'); - ensure_db_ok($statement2); - $result2 = $statement2->execute(); - -} else { - - $statement = $db->prepare('SELECT Date, Time, File_Name, Com_Name, COUNT(*), MAX(Confidence) FROM detections GROUP BY Com_Name ORDER BY Com_Name ASC'); - ensure_db_ok($statement); - $result = $statement->execute(); - - $statement2 = $db->prepare('SELECT Date, Time, File_Name, Com_Name, COUNT(*), MAX(Confidence) FROM detections GROUP BY Com_Name ORDER BY Com_Name ASC'); - ensure_db_ok($statement2); - $result2 = $statement2->execute(); -} - - if(isset($_GET['species'])){ $selection = htmlspecialchars_decode($_GET['species'], ENT_QUOTES); $statement3 = $db->prepare("SELECT Com_Name, Sci_Name, COUNT(*), MAX(Confidence), File_Name, Date, Time from detections WHERE Com_Name = \"$selection\""); @@ -94,16 +65,16 @@ if (get_included_files()[0] === __FILE__) { $birds = array(); $values = array(); - while($results=$result2->fetchArray(SQLITE3_ASSOC)) + while($results=$result->fetchArray(SQLITE3_ASSOC)) { $comname = preg_replace('/ /', '_', $results['Com_Name']); $comname = preg_replace('/\'/', '', $comname); $filename = "/By_Date/".$results['Date']."/".$comname."/".$results['File_Name']; $birds[] = $results['Com_Name']; if ($_GET['sort'] == "confidence") { - $values[] = ' (' . round($results['MAX(Confidence)'] * 100) . '%)'; + $values[] = ' (' . round($results['MaxConfidence'] * 100) . '%)'; } elseif ($_GET['sort'] == "occurrences") { - $valuescount = $results['COUNT(*)']; + $valuescount = $results['Count']; if ($valuescount >= 1000) { $values[] = ' (' . round($valuescount / 1000, 1) . 'k)'; } else { @@ -249,8 +220,8 @@ array_push($excludelines, $results['Date']."/".$comname."/".$results['File_Name' ?> -
Occurrences:
- Max Confidence:
+
Occurrences:
+ Max Confidence:
Best Recording: