prepare('SELECT id, category, name, logo_url, link_url, position FROM logo_banners WHERE category = :category ORDER BY position ASC, id ASC'); $stmt->bindValue(':category', $category, PDO::PARAM_STR); } else { $stmt = $dbh->prepare('SELECT id, category, name, logo_url, link_url, position FROM logo_banners ORDER BY category ASC, position ASC, id ASC'); } $stmt->execute(); return $stmt->fetchAll(PDO::FETCH_ASSOC); } catch (PDOException $e) { return []; } } // Fonction qui permet de récupérer un logo par id (pour la modification dans le panel Admin) function recupererLogoParId($id) { global $dbh; try { $stmt = $dbh->prepare('SELECT id, category, name, logo_url, link_url, position FROM logo_banners WHERE id = :id'); $stmt->bindValue(':id', $id, PDO::PARAM_INT); $stmt->execute(); return $stmt->fetch(PDO::FETCH_ASSOC); } catch (PDOException $e) { return false; } } // Fonction qui affiche le bandeau défilant d'une catégorie de logos sur la page publique // N'affiche rien si la catégorie est vide (la section entière est masquée côté page d'accueil) function afficherLogos($category) { $logos = listeLogos($category); if (empty($logos)) { return; } $sens = $category === 'partner' ? ' logo-marquee-reverse' : ''; echo '
'; echo '
'; // On répète deux fois la liste : le défilement CSS boucle sur -50%, ce qui donne // un effet de scroll infini fluide et sans coupure (voir styles/primary_css.css) for ($repetition = 0; $repetition < 2; $repetition++) { foreach ($logos as $logo) { $nom = htmlspecialchars($logo['name']); $image = htmlspecialchars($logo['logo_url']); $lien = trim($logo['link_url'] ?? ''); if ($lien !== '') { echo ''; } else { echo ''; } } echo '
'; echo '
'; } // Fonction qui affiche la liste des logos (toutes catégories) avec boutons de // modification / suppression, pour le panel admin function afficherLogosAdmin() { $logos = listeLogos(); if (empty($logos)) { echo '

Aucun logo pour le moment.

'; return; } echo '
'; foreach ($logos as $logo) { $id = (int) $logo['id']; $nom = htmlspecialchars($logo['name']); $image = htmlspecialchars($logo['logo_url']); $badge = $logo['category'] === 'partner' ? 'Entreprise' : 'Outil'; echo '
'; echo '
' . $nom . '
'; echo '
'; echo '' . $badge . ''; echo '

' . $nom . '

'; echo '
'; echo '
'; echo 'Modifier'; echo 'Supprimer'; echo '
'; echo '
'; } echo '
'; }