affiche la date inscrite sur la page

This commit is contained in:
Fred Tempez 2023-07-14 16:22:23 +02:00
parent c8bae4ae82
commit e384f074e2
4 changed files with 55 additions and 27 deletions

File diff suppressed because one or more lines are too long

View File

@ -136,3 +136,26 @@ function geocode($cities)
return $citiesData;
}
function getDatejour($jour) {
// URL de la page à analyser
$url = 'https://www.sabradou.com/' . $jour;
// Récupération du contenu de la page
$html = file_get_contents($url);
// Création d'un objet DOMDocument
$dom = new DOMDocument();
libxml_use_internal_errors(true); // Ignore les erreurs de parsing HTML
$dom->loadHTML($html);
libxml_clear_errors();
// Recherche du <h2> avec l'id "datejour"
$datejourH2 = $dom->getElementById('datejour');
// Extraire la date du contenu du <h2>
$datejour = trim($datejourH2->nodeValue);
return $datejour;
}

View File

@ -17,12 +17,13 @@
<h2>SUR LE SITE <a href="https://www.sabradou.com/" target="_blank">SABRADOU.COM</a></h2>
<form if="form" action="index.php" method="GET">
<label for="calendrier">Brocantes du :</label>
<select name="calendrier"onchange="this.form.submit();" id="calendrier-list">
<select name="calendrier" onchange="this.form.submit();" id="calendrier-list">
<?php $calendrier = getCalendrier(); ?>
<?php foreach ($calendrier as $item): ?>
<?php $selected = isset($_GET['calendrier']) && $_GET['calendrier'] === $item['url'] ? 'selected' : ''; ?>
<option value="<?php echo $item['url']; ?>" <?php echo $selected; ?>><?php echo $item['node']; ?></option>
<?php endforeach; ?>
<?php $selected = isset($_GET['calendrier']) && $_GET['calendrier'] === $item['url'] ? 'selected' : ''; ?>
<option value="<?php echo $item['url']; ?>" <?php echo $selected; ?>><?php echo $item['node']; ?>
</option>
<?php endforeach; ?>
</select>
<!--<input type="submit"value="Localiser sur une carte">-->
</form>
@ -30,40 +31,41 @@
<div class="container">
<div class="map-column">
<?php
$jour = isset($_GET['calendrier']) ? $_GET['calendrier'] : '';
$citiesList = getCities($jour);
$citiesGeoCode = geocode($citiesList);
?>
<div id="map"></div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.7.1/leaflet.js"></script>
<script>
// Tableau des villes et des coordonnées
var cities = <?php echo json_encode($citiesGeoCode); ?>;
$jour = isset($_GET['calendrier']) ? $_GET['calendrier'] : '';
$citiesList = getCities($jour);
$citiesGeoCode = geocode($citiesList);
?>
<div id="map"></div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/1.7.1/leaflet.js"></script>
<script>
// Tableau des villes et des coordonnées
var cities = <?php echo json_encode($citiesGeoCode); ?>;
// Créer la carte
var map = L.map('map').setView([50.5095, 2.6683], 9);
// Créer la carte
var map = L.map('map').setView([50.5095, 2.6683], 9);
// Ajouter une couche de tuiles OpenStreetMap à la carte
L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
attribution: 'Carte OpenStreetMap'
}).addTo(map);
// Ajouter une couche de tuiles OpenStreetMap à la carte
L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
attribution: 'Carte OpenStreetMap'
}).addTo(map);
// Placer des marqueurs pour chaque ville sur la carte
cities.forEach(function (city) {
var marker = L.marker([city.lat, city.lon]).addTo(map);
marker.bindPopup('<a href="' + city.href + '" target="_blank">' + city.name + '</a>');
});
</script>
// Placer des marqueurs pour chaque ville sur la carte
cities.forEach(function (city) {
var marker = L.marker([city.lat, city.lon]).addTo(map);
marker.bindPopup('<a href="' + city.href + '" target="_blank">' + city.name + '</a>');
});
</script>
</div>
<div class="cities-column">
<ul class="cities">
<?php $jour = isset($_GET['calendrier']) ? $_GET['calendrier'] : ''; ?>
<?php $citiesList = getCities($jour); ?>
<?php echo '<h3>' . getDatejour($jour) . '</h3>'; ?>
<?php if (isset($citiesList)): ?>
<?php foreach ($citiesList as $city): ?>
<li>
<?php
echo '<a href="' . $city['href'] . '" target="_blank">' . $city['name'] . '</a>' ; ?>
echo '<a href="' . $city['href'] . '" target="_blank">' . $city['name'] . '</a>'; ?>
</li>
<?php endforeach; ?>
<?php endif; ?>

View File

@ -13,6 +13,10 @@
.cities-column {
flex: 2; /* Occupe 100% de la largeur dans les petits écrans et 10% dans les grands écrans */
padding: 5px;
text-align: center;
}
.cities-column > li {
text-align: center;
}
.map-column {