Bonjour à vous,
sur mon site hébergé sur Wordpress, j'aimerais intégré un carousel Bootstrap qui irait chercher des images dont les liens sont dans ma base SQL.
Etant plutôt débutant en php, j'ai adapté un code trouvé sur : https://blog.smartcodehub.com/dynami...rousel-in-php/ (mais le liens n'a pas l'air fonctionner aujourd'hui )
Du coup, ça donne ça chez moi :
Sachant que la connexion se fait suivant le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 <div id="carouselExampleControls" class="carousel slide" data-ride="carousel"> <div class="carousel-inner"> <?php //récupération des images //Connexion et requête SQL $connexion2=include 'dunum_connexion_db.php'; $img= $connexion2->prepare ("SELECT * FROM image WHERE id_site='$ID'"); $img->execute(); while($data2=$img->fetch(PDO::FETCH_ASSOC)){ $data2 = array_map($hsc, $data2); // échappement de toutes les valeurs //adaptation du premier résultat pour l'item active for ($i = 0; $i < count($data2); $i++) { if ($i == 0) {$addActive = "active"; } else { $addActive = ""; } //codage du carousel echo '<div class="carousel-item ' . $addActive . '"> <img class="image-carousel" src="' . $data2[$i]['img_lien'] . '" alt=""> <div class="carousel-caption"> <p>'.$data2[$i]['img_legende'].'</p> </div> </div>'; } } ?> </div> </div>Il y a l'air d'y avoir un problème dans mon code car si j'affiche le "count($data2)", ça me met 999 alors qu'il devrait y avoir que deux enregistrements (qui ressortent très bien si je print_r $data2) et le caroussel ne me sort que des diapositives vides.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 if ( ! function_exists('db_connexion')) { function db_connexion() { // une fois ouverte, on renvoie toujours la même connexion static $pdo; // on vérifie si la connexion n'a pas déjà été initialisée if ( ! ($pdo instanceof PDO)) { // tentative d'ouverture de la connexion MySQL $serveur = "localhost"; $dbname = "xx_local"; $login = "root"; $pass = ""; try { $pdo = new PDO("mysql:host=$serveur;dbname=$dbname", $login,$pass,array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8')); $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION); } catch(PDOException $e){ echo 'Echec : ' .$e->getMessage(); } } // renvoi de la ressource : connexion à la base de données return $pdo; } } return db_connexion();
Est-ce que, par hasard, quelqu'un aurait la bonté d'âme de regarder mon code pour voir si qqchose cloche ?
Merci d'avance
Partager