12-08-2022
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
|
||||
32
css/sls.css
32
css/sls.css
@@ -278,12 +278,17 @@ select.mySelect option{
|
||||
opacity: 0.7 !important;
|
||||
}
|
||||
button.myButton{
|
||||
background-color: Beige;
|
||||
/*
|
||||
box-shadow: 0 3px 6px rgba(0, 0, 0, 0.6);
|
||||
background-color: transparent;
|
||||
opacity: 0.4 !important;
|
||||
*/
|
||||
}
|
||||
.all{
|
||||
font-weight: 800;
|
||||
margin-left: 2em;
|
||||
}
|
||||
.indexForm {
|
||||
position: absolute;
|
||||
bottom: 0px;
|
||||
@@ -294,7 +299,23 @@ button.myButton{
|
||||
display: inline-block;
|
||||
margin-left: 16px;
|
||||
}
|
||||
.bordure {
|
||||
border: 1px solid #dad59c;
|
||||
border-radius: 5px;
|
||||
padding: 15px;
|
||||
margin: 8px;
|
||||
}
|
||||
|
||||
fieldset {
|
||||
border: 1px solid #dad59c;
|
||||
border-radius: 5px;
|
||||
padding: 15px;
|
||||
margin: 8px;
|
||||
}
|
||||
legend {
|
||||
font-size: 14px;
|
||||
color: #b1ac72;
|
||||
}
|
||||
/*
|
||||
maps2.php
|
||||
*/
|
||||
@@ -318,9 +339,11 @@ maps2.php
|
||||
|
||||
/*
|
||||
view
|
||||
|
||||
input[type="radio"]
|
||||
*/
|
||||
|
||||
select, button {
|
||||
select, button, label, .operateur {
|
||||
|
||||
/* styling */
|
||||
background-color: white;
|
||||
@@ -345,6 +368,10 @@ view
|
||||
select {
|
||||
padding: 0.25em 3.5em 0.25em 1em;
|
||||
}
|
||||
.operateur {
|
||||
padding: 0.25em 1em 0.25em 1em;
|
||||
}
|
||||
|
||||
/* arrows */
|
||||
|
||||
select.classic {
|
||||
@@ -387,4 +414,7 @@ select:-moz-focusring {
|
||||
text-shadow: 0 0 0 #000;
|
||||
}
|
||||
|
||||
.noimg {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,5 +1,13 @@
|
||||
<?php
|
||||
|
||||
function preprint($s, $return=false) {
|
||||
$x = "<pre>";
|
||||
$x .= print_r($s, 1);
|
||||
$x .= "</pre>";
|
||||
if ($return) return $x;
|
||||
else print $x;
|
||||
}
|
||||
|
||||
/* Fonction month(): convertit le mois (nb) en mois (texte) francais
|
||||
|
||||
photo-du-mois.php
|
||||
@@ -77,22 +85,62 @@ function get_gps($exif) {
|
||||
$GPSLongitude = isset($exif['GPS']['GPSLongitude']) ? $exif['GPS']['GPSLongitude'] : '';
|
||||
$GPSAltitude = isset($exif['GPS']['GPSAltitude']) ? $exif['GPS']['GPSAltitude'] : '';
|
||||
|
||||
preprint($GPSLatitude);
|
||||
preprint($GPSLongitude);
|
||||
preprint($GPSAltitude);
|
||||
|
||||
$lat_degrees = count($GPSLatitude) > 0 ? gps2Num($GPSLatitude[0]) : 0;
|
||||
$lat_minutes = count($GPSLatitude) > 1 ? gps2Num($GPSLatitude[1]) : 0;
|
||||
$lat_seconds = count($GPSLatitude) > 2 ? gps2Num($GPSLatitude[2]) : 0;
|
||||
|
||||
/*
|
||||
echo "latitude <br />";
|
||||
echo $lat_degrees . "<br />";
|
||||
echo $lat_minutes . "<br />";
|
||||
echo $lat_seconds . "<br />";
|
||||
*/
|
||||
|
||||
$lon_degrees = count($GPSLongitude) > 0 ? gps2Num($GPSLongitude[0]) : 0;
|
||||
$lon_minutes = count($GPSLongitude) > 1 ? gps2Num($GPSLongitude[1]) : 0;
|
||||
$lon_seconds = count($GPSLongitude) > 2 ? gps2Num($GPSLongitude[2]) : 0;
|
||||
|
||||
/*
|
||||
echo "longitude <br />";
|
||||
echo $lon_degrees . "<br />";
|
||||
echo $lon_minutes . "<br />";
|
||||
echo $lon_seconds . "<br />";
|
||||
*/
|
||||
|
||||
$lat_direction = ($GPSLatitudeRef == 'W' or $GPSLatitudeRef == 'S') ? -1 : 1;
|
||||
$lon_direction = ($GPSLongitudeRef == 'W' or $GPSLongitudeRef == 'S') ? -1 : 1;
|
||||
|
||||
/*
|
||||
echo $lat_direction . "<br />";
|
||||
echo $lon_direction . "<br />";
|
||||
*/
|
||||
|
||||
$latitude = $lat_direction * ($lat_degrees + ($lat_minutes / 60) + ($lat_seconds / (60*60)));
|
||||
$longitude = $lon_direction * ($lon_degrees + ($lon_minutes / 60) + ($lon_seconds / (60*60)));
|
||||
|
||||
#echo "lat type: " . gettype($latitude);
|
||||
$latitude = number_format($latitude, 10, '.', '');
|
||||
#echo "long type: " . gettype($longitude);
|
||||
$longitude = number_format($longitude, 10, '.', '');
|
||||
|
||||
#echo "latitude: " . $latitude . "<br />";
|
||||
#echo "longitude: " . $longitude . "<br />";
|
||||
|
||||
if($GPSAltitude != ""){
|
||||
$alt = explode('/', $GPSAltitude);
|
||||
$altitude = (isset($alt[1])) ? ($alt[0] / $alt[1]) : $alt[0];
|
||||
}
|
||||
else $altitude = 0;
|
||||
|
||||
#echo "alt type: " . gettype($altitude);
|
||||
$altitude = number_format($altitude, 2, '.', '');
|
||||
|
||||
#echo "altitude: " . $altitude . "<br />";
|
||||
|
||||
}
|
||||
else {
|
||||
$latitude = '';
|
||||
|
||||
@@ -37,7 +37,7 @@ $base = 'db_photo.sqlite3';
|
||||
$th_w = 300;
|
||||
$th_h = 300;
|
||||
|
||||
$dir = (new AdvancedFilesystemIterator('photos/img/'))->match('/heic|HEIC|jpg|jpeg|JPG|JPEG|webp|WEBP$/');
|
||||
$dir = (new AdvancedFilesystemIterator('photos/img/'))->match('/heic|HEIC|jpg|jpeg|JPG|JPEG|webp|WEBP|avif|AVIF$/');
|
||||
|
||||
echo '<h3>' . count($dir) . gettext(' images found in folder') . ' <i>photos/img/</i> ...</h3>';
|
||||
|
||||
@@ -49,7 +49,7 @@ $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
||||
$query = "CREATE TABLE IF NOT EXISTS photos (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
||||
filename TEXT NOT NULL,
|
||||
date TEXT,
|
||||
dateoriginal TEXT,
|
||||
lens TEXT,
|
||||
speed TEXT,
|
||||
iso INTEGER,
|
||||
@@ -96,6 +96,12 @@ foreach($dir as $file){
|
||||
|
||||
# YYYY-MM-DD HH:MM:SS.SSS - 2019:10:01 14:03:12
|
||||
$da = isset($exif['EXIF']['DateTimeOriginal']) ? $exif['EXIF']['DateTimeOriginal'] : '';
|
||||
if (isset($exif['EXIF']['DateTimeOriginal'])) {
|
||||
$d = explode(' ', $exif['EXIF']['DateTimeOriginal']);
|
||||
$da = str_replace(':', '-', $d[0]) . " " . $d[1] . ".000";
|
||||
} else {
|
||||
$d = '';
|
||||
}
|
||||
|
||||
if (isset($exif['EXIF']['UndefinedTag:0xA434'])) {
|
||||
$w = $exif['EXIF']['UndefinedTag:0xA434'];
|
||||
@@ -274,11 +280,15 @@ foreach($dir as $file){
|
||||
$ap = isset($exif['COMPUTED']['ApertureFNumber']) ? $exif['COMPUTED']['ApertureFNumber'] : '';
|
||||
|
||||
$gps = get_gps($exif);
|
||||
|
||||
if ($gps['latitude'] != "") {
|
||||
echo "lat: " . $gps['latitude'] . "<br>";
|
||||
echo "long: " . $gps['longitude'] . "<br>";
|
||||
echo "alt: " . $gps['altitude'] . "<br>";
|
||||
}
|
||||
$photos[$i] = array(
|
||||
'filename' => $file,
|
||||
|
||||
'date' => $da,
|
||||
'dateoriginal' => $da,
|
||||
'lens' => $obj,
|
||||
'speed' => $sp,
|
||||
'iso' => $iso,
|
||||
@@ -364,11 +374,11 @@ echo '<h3>' . gettext('Insertion of ') . $z . ' ' . $b . gettext(' in database')
|
||||
// Insertion des photos dans la base
|
||||
// Création des vignettes
|
||||
try {
|
||||
$query2 = "INSERT OR IGNORE INTO photos (filename, date, lens, speed, iso, width, height, html, aperture, model, lat, long, alt, legende, copyright, title, creator, keywords, metering, flash, focal, wb, program) VALUES (:filename, :date, :lens, :speed, :iso, :width, :height, :html, :aperture, :model, :lat, :long, :alt, :legende, :copyright, :title, :creator, :keywords, :metering, :flash, :focal, :wb, :program)";
|
||||
$query2 = "INSERT OR IGNORE INTO photos (filename, dateoriginal, lens, speed, iso, width, height, html, aperture, model, lat, long, alt, legende, copyright, title, creator, keywords, metering, flash, focal, wb, program) VALUES (:filename, :dateoriginal, :lens, :speed, :iso, :width, :height, :html, :aperture, :model, :lat, :long, :alt, :legende, :copyright, :title, :creator, :keywords, :metering, :flash, :focal, :wb, :program)";
|
||||
|
||||
$stmt = $conn->prepare($query2);
|
||||
$stmt->bindParam(':filename', $file);
|
||||
$stmt->bindParam(':date', $da);
|
||||
$stmt->bindParam(':dateoriginal', $da);
|
||||
$stmt->bindParam(':lens', $obj);
|
||||
$stmt->bindParam(':speed', $sp);
|
||||
$stmt->bindParam(':iso', $iso);
|
||||
@@ -397,7 +407,7 @@ try {
|
||||
if (isset($photos)) {
|
||||
foreach ($photos as $item) {
|
||||
$file = $item['filename'];
|
||||
$da = $item['date'];
|
||||
$da = $item['dateoriginal'];
|
||||
$obj = $item['lens'];
|
||||
$sp = $item['speed'];
|
||||
$iso = $item['iso'];
|
||||
@@ -434,9 +444,9 @@ try {
|
||||
|
||||
|
||||
/* Affichage depuis la bdd des dernières images ajoutées */
|
||||
|
||||
/*
|
||||
try {
|
||||
$query4 = "SELECT filename, date, lens, speed, iso, width, height, html, aperture, model, lat, long, alt, legende, copyright, title, creator, keywords, metering, flash, focal, wb, program FROM photos WHERE id > ? ORDER BY date DESC";
|
||||
$query4 = "SELECT filename, dateoriginal, lens, speed, iso, width, height, html, aperture, model, lat, long, alt, legende, copyright, title, creator, keywords, metering, flash, focal, wb, program FROM photos WHERE id > ? ORDER BY dateoriginal DESC";
|
||||
//$query4 = "SELECT filename, date, lens, speed, iso, width, height, html, aperture, model, lat, long, alt, legende, copyright, title, creator, keywords FROM photos WHERE lat != '' OR long != '' ORDER BY date DESC";
|
||||
|
||||
$stmt = $conn->prepare($query4);
|
||||
@@ -461,7 +471,7 @@ try {
|
||||
$thumbnail = host() . str_replace("photos/img", "photos/thumb", $row['filename']);
|
||||
$full = host() . $row['filename'];
|
||||
|
||||
echo '<tr><td>' . '<a href="' . $full . '"><img src="'.$thumbnail.'" /></a>' . '</td><td>' . $row['filename'] . '</td><td>' . $row['date'] . '</td><td>' . $row['lens'] . '</td><td>' . $row['speed'] . '</td><td>' . $row['iso'] . '</td><td>' . $row['width'] . '</td><td>' . $row['height'] . '</td><td>' . $row['html'] . '</td><td>' . $row['aperture'] . '</td><td>' . $row['model'] . '</td><td>' . $row['lat'] . '</td><td>' . $row['long'] . '</td><td>' . $row['alt'] . '</td><td>' . $row['legende'] . '</td><td>' . $row['copyright'] . '</td><td>' . $row['title'] . '</td><td>' . $row['creator'] . '</td><td>' . $row['keywords'] . '</td><td>' . $row['metering'] . '</td><td>' . $row['flash'] . '</td><td>' . $row['focal'] . '</td><td>' . $row['wb'] . '</td><td>' . $row['program'] . '</td></tr>';
|
||||
echo '<tr><td>' . '<a href="' . $full . '"><img src="'.$thumbnail.'" /></a>' . '</td><td>' . $row['filename'] . '</td><td>' . $row['dateoriginal'] . '</td><td>' . $row['lens'] . '</td><td>' . $row['speed'] . '</td><td>' . $row['iso'] . '</td><td>' . $row['width'] . '</td><td>' . $row['height'] . '</td><td>' . $row['html'] . '</td><td>' . $row['aperture'] . '</td><td>' . $row['model'] . '</td><td>' . $row['lat'] . '</td><td>' . $row['long'] . '</td><td>' . $row['alt'] . '</td><td>' . $row['legende'] . '</td><td>' . $row['copyright'] . '</td><td>' . $row['title'] . '</td><td>' . $row['creator'] . '</td><td>' . $row['keywords'] . '</td><td>' . $row['metering'] . '</td><td>' . $row['flash'] . '</td><td>' . $row['focal'] . '</td><td>' . $row['wb'] . '</td><td>' . $row['program'] . '</td></tr>';
|
||||
}
|
||||
echo '</tbody></table>';
|
||||
echo '</div>';
|
||||
@@ -471,6 +481,7 @@ try {
|
||||
catch(PDOException $e) {
|
||||
echo $e->getMessage();
|
||||
}
|
||||
*/
|
||||
?>
|
||||
|
||||
<script type='text/javascript'>
|
||||
|
||||
2
maps.php
2
maps.php
@@ -41,7 +41,7 @@
|
||||
|
||||
try {
|
||||
$conn4 = new PDO('sqlite:db_photo.sqlite3');
|
||||
$query4 = "SELECT filename, date, lens, speed, iso, width, height, html, aperture, model, lat, long, alt, legende, copyright, title, creator, keywords, metering, flash, focal, wb, program FROM photos WHERE lat != '' ORDER BY date DESC";
|
||||
$query4 = "SELECT filename, dateoriginal, lens, speed, iso, width, height, html, aperture, model, lat, long, alt, legende, copyright, title, creator, keywords, metering, flash, focal, wb, program FROM photos WHERE lat != '' ORDER BY dateoriginal DESC";
|
||||
|
||||
$stmt = $conn4->prepare($query4);
|
||||
$stmt->execute();
|
||||
|
||||
@@ -35,7 +35,7 @@ else $page = intval($_GET['page']);
|
||||
try {
|
||||
$conn4 = new PDO('sqlite:db_photo.sqlite3');
|
||||
// WHERE id='26'
|
||||
$query4 = "SELECT filename, date, lens, speed, iso, width, height, html, aperture, model, lat, long, alt, legende, copyright, title, creator, keywords, metering, flash, focal, wb, program FROM photos ORDER BY date DESC LIMIT ? OFFSET ?";
|
||||
$query4 = "SELECT filename, dateoriginal, lens, speed, iso, width, height, html, aperture, model, lat, long, alt, legende, copyright, title, creator, keywords, metering, flash, focal, wb, program FROM photos ORDER BY dateoriginal DESC LIMIT ? OFFSET ?";
|
||||
//nb d'archive par page
|
||||
$limit = 13;
|
||||
$offset = $limit * ($page -1);
|
||||
@@ -53,7 +53,7 @@ try {
|
||||
}
|
||||
?>
|
||||
|
||||
<p class="month"><?php echo month($result[0]['date']); ?></p>
|
||||
<p class="month"><?php echo month($result[0]['dateoriginal']); ?></p>
|
||||
|
||||
<?php
|
||||
$lb = data_for_lightbox($result[0]);
|
||||
@@ -115,7 +115,7 @@ try {
|
||||
<?php
|
||||
|
||||
for ($i = 1; $i <= ($rowcount -1); $i++) {
|
||||
$date = $result[$i]['date'];
|
||||
$date = $result[$i]['dateoriginal'];
|
||||
|
||||
$lb = data_for_lightbox($result[$i]);
|
||||
|
||||
|
||||
162
view_bdd.php
162
view_bdd.php
@@ -1,3 +1,4 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
@@ -18,6 +19,9 @@
|
||||
header("location:admin/login.php");
|
||||
exit;
|
||||
}
|
||||
echo "_SESSION<br>";
|
||||
_pr($_SESSION);
|
||||
//echo $_SESSION['query'];
|
||||
|
||||
$domain = 'sentier';
|
||||
localize($domain);
|
||||
@@ -36,11 +40,24 @@
|
||||
$base = 'db_photo.sqlite3';
|
||||
$perpage = 20;
|
||||
|
||||
echo "<a href='close.php'> close session </a>";
|
||||
|
||||
if (!isset($_GET['page'])) $page = 1;
|
||||
else $page = intval($_GET['page']);
|
||||
|
||||
//echo $req;
|
||||
echo "_POST<br>";
|
||||
_pr($_POST);
|
||||
if (!empty($_POST)) {
|
||||
$_SESSION['query'] = $_POST;
|
||||
echo "post query non vide";
|
||||
echo gettype($_POST);
|
||||
echo gettype($_SESSION['query']);
|
||||
}
|
||||
echo "_SESSION['query']<br>";
|
||||
_pr($_SESSION['query']);
|
||||
$gps = (isset($_SESSION['query']['gps'])) ? $_SESSION['query']['gps'] : "off";
|
||||
echo $gps;
|
||||
// form option <selected>
|
||||
|
||||
$dir = (new AdvancedFilesystemIterator('photos/img/'))->match('/heic|HEIC|jpg|jpeg|JPG|JPEG|webp|WEBP$/');
|
||||
|
||||
@@ -51,15 +68,30 @@ $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
||||
|
||||
|
||||
// Construction des requêtes
|
||||
# SELECT * FROM photos WHERE dateoriginal LIKe '2021%'
|
||||
# SELECT * FROM photos WHERE strftime('%Y', dateoriginal) = '2021' ORDER BY dateoriginal
|
||||
# SELECT * FROM photos WHERE strftime('%Y', dateoriginal) = '2015' ORDER BY dateoriginal
|
||||
|
||||
# SELECT DISTINCT strftime('%Y', dateoriginal) FROM photos WHERE dateoriginal <> "" ORDER BY dateoriginal
|
||||
|
||||
$request = array(
|
||||
'lens' => 'SELECT DISTINCT lens FROM photos WHERE lens <> "" ORDER BY lens',
|
||||
'model' => 'SELECT DISTINCT model FROM photos WHERE model <> "" ORDER BY model',
|
||||
'iso' => 'SELECT DISTINCT iso FROM photos WHERE iso <> "" ORDER BY iso',
|
||||
'speed' => 'SELECT DISTINCT speed FROM photos WHERE speed <> "" ORDER BY speed',
|
||||
'keywords' => 'SELECT DISTINCT keywords FROM photos WHERE keywords <> ""'
|
||||
'keywords' => 'SELECT DISTINCT keywords FROM photos WHERE keywords <> ""',
|
||||
'strftime("%Y", dateoriginal)' => 'SELECT DISTINCT strftime("%Y", dateoriginal) FROM photos WHERE dateoriginal <> "" ORDER BY dateoriginal DESC'
|
||||
);
|
||||
|
||||
/*
|
||||
$req = 'SELECT DISTINCT strftime("%Y", dateoriginal) FROM photos WHERE dateoriginal <> "" ORDER BY dateoriginal';
|
||||
$query = $conn->query($req);
|
||||
$res = $query->fetchAll(PDO::FETCH_ASSOC);
|
||||
preprint($res);
|
||||
$res = array_column($res,'strftime("%Y", dateoriginal)');
|
||||
preprint($res);
|
||||
*/
|
||||
|
||||
$select = array();
|
||||
$i = 0;
|
||||
foreach ($request as $key => $val){
|
||||
@@ -83,22 +115,59 @@ foreach ($request as $key => $val){
|
||||
$i++;
|
||||
}
|
||||
|
||||
//preprint($select);
|
||||
|
||||
// Affichage des photos
|
||||
|
||||
try {
|
||||
$columns = array('date','lens','model','iso','lat');
|
||||
$columns = array('dateoriginal','lens','model','iso','lat');
|
||||
$column = isset($_GET['column']) && in_array($_GET['column'], $columns) ? $_GET['column'] : $columns[0];
|
||||
$sort_order = isset($_GET['order']) && strtolower($_GET['order']) == 'desc' ? 'DESC' : 'ASC';
|
||||
|
||||
// SELECT id,filename, date, lens, speed, iso, width, height, html, aperture, model, lat, long, alt, legende, copyright, title, creator, keywords, metering, flash, focal, wb, program
|
||||
|
||||
/*
|
||||
if (isset($_POST['lens'])) $req = "WHERE lens = '" . $_POST['lens'] . "' ";
|
||||
elseif (isset($_POST['model'])) $req = "WHERE model = '" . $_POST['model'] . "' ";
|
||||
elseif (isset($_POST['iso'])) $req = "WHERE iso = '" . $_POST['iso'] . "' ";
|
||||
elseif (isset($_POST['speed'])) $req = "WHERE speed = '" . $_POST['speed'] . "' ";
|
||||
elseif (isset($_POST['keyword'])) $req = "WHERE keywords LIKE '%" . str_replace("'","''", $_POST['keyword']) . "%' ";
|
||||
else $req = "";
|
||||
*/
|
||||
$req1 = "";
|
||||
$req2 = "";
|
||||
$req3 = "";
|
||||
$req4 = "";
|
||||
$req5 = "";
|
||||
$req6 = "";
|
||||
$req7 = "";
|
||||
if (!empty($_SESSION['query']['lens'])) $req1 = "lens = '" . $_SESSION['query']['lens'] . "'";
|
||||
if (!empty($_SESSION['query']['model'])) $req2 = "model = '" . $_SESSION['query']['model'] . "'";
|
||||
if (!empty($_SESSION['query']['iso'])) $req3 = "iso = '" . $_SESSION['query']['iso'] . "'";
|
||||
if (!empty($_SESSION['query']['speed'])) $req4 = "speed = '" . $_SESSION['query']['speed'] . "'";
|
||||
if (!empty($_SESSION['query']['keyword'])) $req5 = "keywords LIKE '%" . str_replace("'","''", $_SESSION['query']['keyword']) . "%'";
|
||||
if (!empty($_SESSION['query']['all']) && ($_SESSION['query']['all'] == "all")) $req = "";
|
||||
if (isset($_SESSION['query']['operator'])) $operator = " " . $_SESSION['query']['operator'] . " ";
|
||||
if (!empty($_SESSION['query']['gps'])) $req6 = "lat != '' AND long != ''";
|
||||
if (!empty($_SESSION['query']['date'])) $req7 = "strftime('%Y', dateoriginal) = '" . $_SESSION['query']['date'] . "'";
|
||||
|
||||
if (($req1 != "") || ($req2 != "") || ($req3 != "") || ($req4 != "") || ($req5 != "")) {
|
||||
$req = "WHERE " . ($req1 != "" ? $req1 . $operator : "") . ($req2 != "" ? $req2 . $operator : "") . ($req3 != "" ? $req3 . $operator : "") . ($req4 != "" ? $req4 . $operator : "") . ($req5 != "" ? $req5 . $operator : "");
|
||||
$req = substr_replace($req, " ", (strlen($req) - strlen($operator)), strlen($operator));
|
||||
}
|
||||
// add
|
||||
elseif ($req6 != "") {
|
||||
$req = "WHERE " . $req6 . " ";
|
||||
}
|
||||
elseif ($req7 != "") {
|
||||
$req = "WHERE " . $req7 . " ";
|
||||
}
|
||||
//
|
||||
else $req = "";
|
||||
|
||||
//echo '<pre><code>' . $req . '</code></pre>';
|
||||
|
||||
|
||||
|
||||
|
||||
$query = "SELECT * FROM photos " . $req . "ORDER BY " . $column . " " . $sort_order . " " . "LIMIT ? OFFSET ?";
|
||||
|
||||
@@ -108,7 +177,7 @@ try {
|
||||
|
||||
$stmt = $conn->prepare($query);
|
||||
$stmt->execute(array($perpage, $offset)); // (1,3...) 1=1ere valeur 3=valeur
|
||||
# id 1 -> 3
|
||||
// id 1 -> 3
|
||||
//$stmt->execute(array(1, 3)); // WHERE id >= ? AND id <= ? ORDER BY date DESC";
|
||||
|
||||
//$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||
@@ -121,8 +190,11 @@ try {
|
||||
$add_class = ' class="highlight"';
|
||||
?>
|
||||
|
||||
<div class="myForm">
|
||||
<form name="keywordSelect" action="view_bdd.php" method="post" >
|
||||
<form id="keywordSelect" name="keywordSelect" action="view_bdd.php" method="post" class="myForm" >
|
||||
<fieldset>
|
||||
<legend>APN</legend>
|
||||
|
||||
|
||||
<select name="keyword" id="keyword" class="classic">
|
||||
<option value=""><?php echo gettext('keywords'); ?></option>
|
||||
<?php
|
||||
@@ -131,12 +203,6 @@ try {
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
<button type="submit" class="myButton">ok</button>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div class="myForm">
|
||||
<form name="modelSelect" action="view_bdd.php" method="post" >
|
||||
<select name="model" id="model" class="classic">
|
||||
<option value=""><?php echo gettext('model'); ?></option>
|
||||
<?php
|
||||
@@ -145,11 +211,6 @@ try {
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
<button type="submit" class="myButton">ok</button>
|
||||
</form>
|
||||
</div>
|
||||
<div class="myForm">
|
||||
<form name="lensSelect" action="view_bdd.php" method="post" >
|
||||
<select name="lens" id="lens" class="classic">
|
||||
<option value=""><?php echo gettext('lens'); ?></option>
|
||||
<?php
|
||||
@@ -158,11 +219,6 @@ try {
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
<button type="submit" class="myButton">ok</button>
|
||||
</form>
|
||||
</div>
|
||||
<div class="myForm">
|
||||
<form name="isoSelect" action="view_bdd.php" method="post" >
|
||||
<select name="iso" id="iso" class="classic">
|
||||
<option value=""><?php echo gettext('iso'); ?></option>
|
||||
<?php
|
||||
@@ -171,11 +227,6 @@ try {
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
<button type="submit" class="myButton">ok</button>
|
||||
</form>
|
||||
</div>
|
||||
<div class="myForm">
|
||||
<form name="speedSelect" action="view_bdd.php" method="post" >
|
||||
<select name="speed" id="speed" class="classic">
|
||||
<option value=""><?php echo gettext('speed'); ?></option>
|
||||
<?php
|
||||
@@ -184,27 +235,67 @@ try {
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
<button type="submit" class="myButton">ok</button>
|
||||
<span class="operateur"><?php echo gettext('Operator:'); ?></span>
|
||||
<input type="radio" id="operator1" name="operator" value="AND" checked>
|
||||
<label for="ope1"><?php echo gettext('AND'); ?></label>
|
||||
<input type="radio" id="operator2" name="operator" value="OR">
|
||||
<label for="ope1"><?php echo gettext('OR'); ?></label>
|
||||
|
||||
|
||||
<button type="submit" class="myButton">OK</button>
|
||||
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
|
||||
<form id="allSelect" name="allSelect" action="view_bdd.php" method="post" class="myForm" >
|
||||
<fieldset>
|
||||
<legend>All</legend>
|
||||
<button type="submit" name = "all" value="all" class="myButton all"> <?php echo gettext('All photos'); ?> </button>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<form id="dateSelect" name="dateSelect" action="view_bdd.php" method="post" class="myForm" >
|
||||
<fieldset>
|
||||
<legend>Divers</legend>
|
||||
<select name="date" id="date" class="classic">
|
||||
<option value=""><?php echo gettext('year'); ?></option>
|
||||
<?php
|
||||
for( $i = 0; $i < count($select[5]); $i++) {
|
||||
echo '<option>' . $select[5]["$i"] . '</option>';
|
||||
}
|
||||
?>
|
||||
</select>
|
||||
|
||||
<input type="checkbox" id="gps" name="gps">
|
||||
<label for="gps">gps</label>
|
||||
|
||||
|
||||
<button type="submit" name = "all" value="all" class="myButton all"> <?php echo gettext('OK'); ?> </button>
|
||||
</fieldset>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
echo '<div id="view_bdd">';
|
||||
echo '<table class="styled-table">';
|
||||
echo '<thead>';
|
||||
echo '<th>' . gettext('Id') . '</th><th>' . gettext('Thumb') . '</th><th>' . gettext('Filename') . '</th><th><a class="sort" href="view_bdd.php?column=date&order=' . $asc_or_desc . '">' . gettext('Date') . ' <i class="fas fa-sort' . ($column == 'date' ? '-' . $up_or_down : '') . '"></i></a></th><th><a href="view_bdd.php?column=lens&order=' . $asc_or_desc . '">' . gettext('Lens') . ' <i class="fas fa-sort' . ($column == 'lens' ? '-' . $up_or_down : '') . '"></i></a></th><th>' . gettext('Speed') . '</th><th><a href="view_bdd.php?column=iso&order=' . $asc_or_desc . '">' . gettext('Iso') . ' <i class="fas fa-sort' . ($column == 'iso' ? '-' . $up_or_down : '') . '"></i></a></th><th>' . gettext('Width') . '</th><th>' . gettext('Height') . '</th><th>' . gettext('Html') . '</th>';
|
||||
echo '<th>' . gettext('Aperture') . '</th><th><a href="view_bdd.php?column=model&order=' . $asc_or_desc . '">' . gettext('Model') . ' <i class="fas fa-sort' . ($column == 'Model' ? '-' . $up_or_down : '') . '"></i></a></th><th><a href="view_bdd.php?column=lat&order=' . $asc_or_desc . '">' . gettext('Latitude') . ' <i class="fas fa-sort' . ($column == 'lat' ? '-' . $up_or_down : '') . '"></i></a></th><th>' . gettext('Longitude') . '</th><th>' . gettext('Alttitude') . '</th><th>' . gettext('Legende') . '</th><th>' . gettext('Copyright') . '</th><th>' . gettext('Title') . '</th>';
|
||||
echo '<th>' . gettext('Creator') . '</th><th>' . gettext('Keywords') . '</th><th>' . gettext('Metering') . '</th><th>' . gettext('Flash') . '</th><th>' . gettext('Focal') . '</th><th>' . gettext('Wb') . '</th><th>' . gettext('Program') . '</th>';
|
||||
echo '<th>' . gettext('Id') . '</th><th>' . gettext('Thumb') . '</th><th>' . gettext('Filename') . '</th><th><a class="sort" href="view_bdd.php?column=date&order=' . $asc_or_desc . '">' . gettext('Date') . ' <i class="fas fa-sort' . ($column == 'date' ? '-' . $up_or_down : '') . '"></i></a></th><th><a href="view_bdd.php?column=lens&order=' . $asc_or_desc . '">' . gettext('Lens') . ' <i class="fas fa-sort' . ($column == 'lens' ? '-' . $up_or_down : '') . '"></i></a></th><th>' . gettext('Speed') . '</th><th>' . gettext('Aperture') . '</th><th><a href="view_bdd.php?column=iso&order=' . $asc_or_desc . '">' . gettext('Iso') . ' <i class="fas fa-sort' . ($column == 'iso' ? '-' . $up_or_down : '') . '"></i></a></th><th>' . gettext('Width') . '</th><th>' . gettext('Height') . '</th>';
|
||||
echo '<th><a href="view_bdd.php?column=model&order=' . $asc_or_desc . '">' . gettext('Model') . ' <i class="fas fa-sort' . ($column == 'Model' ? '-' . $up_or_down : '') . '"></i></a></th><th><a href="view_bdd.php?column=lat&order=' . $asc_or_desc . '">' . gettext('Latitude') . ' <i class="fas fa-sort' . ($column == 'lat' ? '-' . $up_or_down : '') . '"></i></a></th><th>' . gettext('Longitude') . '</th><th>' . gettext('Alttitude') . '</th><th>' . gettext('Legende') . '</th><th>' . gettext('Copyright') . '</th><th>' . gettext('Title') . '</th>';
|
||||
echo '<th>' . gettext('Creator') . '</th><th>' . gettext('Keywords') . '</th><th>' . gettext('Metering') . '</th><th>' . gettext('Flash') . '</th><th>' . gettext('Focal') . '</th><th>' . gettext('Wb') . '</th><th>' . gettext('Program') . '</th><th>' . gettext('Html') . '</th>';
|
||||
echo '</thead>';
|
||||
echo '<tbody>';
|
||||
|
||||
$nRows = 0;
|
||||
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
|
||||
$thumbnail = host() . str_replace("photos/img", "photos/thumb", $row['filename']);
|
||||
$full = host() . $row['filename'];
|
||||
|
||||
echo '<tr><td>' . $row['id'] . '</td><td>' . '<a href="' . $full . '"><img src="'.$thumbnail.'" /></a>' . '</td><td>' . $row['filename'] . '</td><td>' . $row['date'] . '</td><td>' . $row['lens'] . '</td><td>' . $row['speed'] . '</td><td>' . $row['iso'] . '</td><td>' . $row['width'] . '</td><td>' . $row['height'] . '</td><td>' . $row['html'] . '</td><td>' . $row['aperture'] . '</td><td>' . $row['model'] . '</td><td>' . $row['lat'] . '</td><td>' . $row['long'] . '</td><td>' . $row['alt'] . '</td><td>' . $row['legende'] . '</td><td>' . $row['copyright'] . '</td><td>' . $row['title'] . '</td><td>' . $row['creator'] . '</td><td>' . $row['keywords'] . '</td><td>' . $row['metering'] . '</td><td>' . $row['flash'] . '</td><td>' . $row['focal'] . '</td><td>' . $row['wb'] . '</td><td>' . $row['program'] . '</td></tr>';
|
||||
echo '<tr><td>' . $row['id'] . '</td><td>' . '<a href="' . $full . '"><img src="'.$thumbnail.'" /></a>' . '</td><td>' . $row['filename'] . '</td><td>' . $row['dateoriginal'] . '</td><td>' . $row['lens'] . '</td><td>' . $row['speed'] . '</td><td>' . $row['aperture'] . '</td><td>' . $row['iso'] . '</td><td>' . $row['width'] . '</td><td>' . $row['height'] . '</td><td>' . $row['model'] . '</td><td>' . $row['lat'] . '</td><td>' . $row['long'] . '</td><td>' . $row['alt'] . '</td><td>' . $row['legende'] . '</td><td>' . $row['copyright'] . '</td><td>' . $row['title'] . '</td><td>' . $row['creator'] . '</td><td>' . $row['keywords'] . '</td><td>' . $row['metering'] . '</td><td>' . $row['flash'] . '</td><td>' . $row['focal'] . '</td><td>' . $row['wb'] . '</td><td>' . $row['program'] . '</td><td>' . $row['html'] . '</td></tr>';
|
||||
$nRows++;
|
||||
}
|
||||
|
||||
if ($nRows == 0) echo '<tr><td colspan="25" class="noimg">' . gettext("No image found !") .'</td></tr>';
|
||||
|
||||
echo '</tbody></table>';
|
||||
echo '</div>';
|
||||
|
||||
@@ -254,6 +345,7 @@ try {
|
||||
</script>
|
||||
|
||||
<?php
|
||||
|
||||
try {
|
||||
//$conn4 = new PDO('sqlite:db_photo.sqlite3');
|
||||
$query4 = "SELECT COUNT(*) AS count FROM photos " . $req;
|
||||
@@ -275,6 +367,7 @@ try {
|
||||
$prec = $page - 1;
|
||||
$suiv = $page + 1;
|
||||
|
||||
if ($numRows > 0) {
|
||||
echo '<div class="navPage">' . gettext("Page") . ': ';
|
||||
if ($page >= 2) echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.$prec.'&column='.$column.'&order='.$sort_order.'" title="'.gettext("Previous Page").'">« '.gettext("prev").'</a> ';
|
||||
for ($i = 1; $i <= $nbpages; $i++) {
|
||||
@@ -287,6 +380,7 @@ try {
|
||||
}
|
||||
if ($page < $nbpages) echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.$suiv.'&column='.$column.'&order='.$sort_order.'" title="'.gettext("Next Page").'">'.gettext("next").' »</a> ';
|
||||
echo '</div>';
|
||||
}
|
||||
?>
|
||||
|
||||
<p class="navPage"><a href="index.php" title="<?php echo gettext("Home"); ?>"><?php echo gettext("Home"); ?></a> | <a href="maps.php" title="<?php echo gettext("Maps"); ?>"><?php echo gettext("Maps"); ?></a> | <a href="photo-du-mois.php" title="<?php echo gettext("Picture of the month"); ?>"><?php echo gettext("Picture of the month"); ?></a> | <a href="admin/index.php" title="<?php echo gettext("Admin"); ?>"><?php echo gettext("Admin"); ?></a></p>
|
||||
|
||||
Reference in New Issue
Block a user