J'avais réussi à finaliser mon projet, mais depuis que j'ai importé des données via un CSV, là avec beaucoup de données les drapeaux ne s'affichent plus.
Donc j'ai re uploadé avec des données dont j'étais certain mais rien à faire. Les pays ne s'affichent plus
Dans SQL, j'ai 3 tables :
- "Lieux"
- "Pays"
- "Tags" (pas utilisée actuellement)
Les drapeaux sont récupérés via la table "Pays" via une table jonction avec "Lieux".
Code
Code : Tout sélectionner
**** ENDROITS À DÉCOUVRIR <br><br />
<?php
try
{
// On se connecte à MySQL
$bdd = new PDO('mysql:host=localhost;dbname=visitearth;charset=utf8', 'root', 'root');
}
catch(Exception $e)
{
// En cas d'erreur, on affiche un message et on arrête tout
die('Erreur : '.$e->getMessage());
}
$reponse = $bdd->query('SELECT l.comte_nom, l.lieu_nom, l.pays_nom, p.flag_nom, l.lieu_url
FROM lieux l LEFT JOIN pays p ON l.pays_nom = p.pays_nom LIMIT 20');
?>
<?php while ($donnees = $reponse->fetch()) { ?>
<div class="vignette">
<img src="<?php echo $donnees['lieu_url']; ?>" alt="Lieu" class="imglieu"/>
<div class="overlay"></div>
<div class="lieu"><?php echo $donnees['lieu_nom']; ?></div>
<div class="pays"><?php echo $donnees['pays_nom']; ?>, <?php echo $donnees['comte_nom']; ?></div>
<img src="<?php echo $donnees['flag_nom']; ?>" alt="drapeau" class="flag"/>
</div>
<?php } ?>Hypothèse1 : est-ce que tous les pays de la table doivent être utilisés pour que ca fonctionne ?
Hypothèse 2: il y a des () dans certains noms de pays; À cause de ça ?
Image table "Lieux": https://drive.google.com/file/d/1ISFwrw ... sp=sharing
Image table "Pays": https://drive.google.com/file/d/1CGGVrB ... sp=sharing
Résultat affichage actuel: https://drive.google.com/file/d/1ffwjxK ... sp=sharing
Un grand merci pour votre aide !