Bonjour,
j'ai crée une page web composée d'un carrousel et d'une liste déroulante composé de nom de villes.
Avec l'aide incontestable de jreaux62 j'ai pu changer le fond d'écran de ma page en fonction de la liste qui était choisie dans le menu déroulant.
J'ai donc ensuite, via ajax et toujours avec l'aide de jreaux62 et rawsrc , actualisé les images de mon carrousel pour n'y placer que celles correspondant à la ville qui a été selectionnée dans la liste déroulante. Mais une fois ajax lancé, lorsque je change de ville j'ai cru comprendre que je perdais les éléments de mon carrousel et donc les images apparaissent les unes à la suite des autres sans carrousel!
J'utilise jquery et il me semble que delegate() me permettrait de récupérer mes éléments mais je n'arrive pas à me servir de cette fonction.
Voici le script utilisé dans ma page principale :
Et la page .php appelé avec ajax :
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 <script type="text/javascript"> function AffichageCarrouselAjax(idselect) { $.ajax({ type: "POST", url: "_inclus/afficher-carrousel-ville-ajax.php", data: "idville="+idselect, dataType:"html", cache: false, success: function(html) { $("#idcarrousel").html(html); }, error: function(xhr, textStatus, errorThrown) { alert('status:' + textStatus + ' --- error: ' + errorThrown); } }); $('body').css('background-image','url(fond/' + idselect + '.jpg)'); }; </script>
En image, voici ma page au lancement :
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50 <?php header('Content-Type: text/xml'); $idville = $_POST['idville']; //on récupère idville if(is_numeric($idville)) { // on protège la bdd ?> <ul> <?php try { // connexion a la bdd $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION; $bdd = new PDO('mysql:host=localhost;dbname=projet_isep', 'root', '', $pdo_options); // requete : infos pour cette ville //$requete = "SELECT * FROM deals WHERE zoneiddeal = '".$idville."';"; //$reponse = $bdd->query('$requete') $reponse = $bdd->query('SELECT * FROM deals WHERE zoneiddeal = '.$idville.';'); // On affiche chaque entrée une à une while ($donnees = $reponse->fetch()) { ?> <li><a href="<?php echo '#'.$donnees['id']?>" class="tooltiplink"><img src="images/<?php echo $donnees['image']; ?>.jpg" alt="" width="100" height="100" /></a></li> <?php } // fin while $reponse->closeCursor(); // Termine le traitement de la requête } // fin try catch(Exception $e) { // En cas d'erreur précédemment, on affiche un message et on arrête tout die('Erreur : '.$e->getMessage()); } // fin catch ?> </ul> <?php } // fin if is_numeric ?>
http://hpics.li/adfdfe6
Et après que je change de ville dans ma liste déroulante :
http://hpics.li/f267fd1
Partager