Bonjour ,

Je me permets de laisser un message car j'ai besoin d'aide concernant une requête que je souhaite effectuer .

J'ai une base de données avec laquelle j’interagis en php .
Sur une de mes pages je boucle des résultats avec php pour générer des div avec du texte .
Je souhaite créer un événement qui me permet d'afficher des éléments de la base de données qui correspondent au texte .

Je donne un exemple plus simple pour mieux comprendre le cheminement :
Vous générez une liste de villes avec php et en passant votre souris sur une des villes , cela affiche en infobulle ( le pays , le département ) comme ce serait défini dans une base de données .

Dans mon cas , il s'agit d'attentes qui sont composées de 6 critères de filtres ( je souhaite pas en afficher autant juste 2 principaux )

Voici mes codes :

Code html : 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
51
52
53
54
55
56
57
58
59
<div class="container">
        <?php
        $reponse = $bdd->query('SELECT * FROM activite ORDER BY activiteNom ASC');
 
        while($donnees = $reponse->fetch())
        {?>
        <div class="card text-center">
          <div class="card-header">
            <?php echo $donnees['activiteNom'];?>
          </div>
          <div class="card-body">
              <h5 class="card-title"><?php echo $donnees['activiteComment'];?></h5>
              <p class="activiteAttente"><?php echo substr($donnees['activiteAttente1'],0,150).'<br/>';?></p> 
              <p class="activiteAttente"><?php echo substr($donnees['activiteAttente2'],0,150).'<br/>';?></p>
              <p class="activiteAttente"><?php echo substr($donnees['activiteAttente3'],0,150).'<br/>';?></p>
              <p class="activiteAttente"><?php echo substr($donnees['activiteAttente4'],0,150).'<br/>';?></p>
              <p class="activiteAttente"><?php echo substr($donnees['activiteAttente5'],0,150).'<br/>';?></p>
              <p class="activiteAttente"><?php echo substr($donnees['activiteAttente6'],0,150).'<br/>';?></p>
              <p class="activiteAttente"><?php echo substr($donnees['activiteAttente7'],0,150).'<br/>';?></p>
              <p class="activiteAttente"><?php echo substr($donnees['activiteAttente8'],0,150).'<br/>';?></p>
              <p class="activiteAttente"><?php echo substr($donnees['activiteAttente9'],0,150).'<br/>';?></p>
              <p class="activiteAttente"><?php echo substr($donnees['activiteAttente10'],0,150).'<br/>';?></p>
              <?php echo "<a class='btn btn-info' href='modifActivite.php?activiteID=".$donnees['activiteID']."&"."activiteNom=".$donnees['activiteNom']."'> Modifier </a>";?>
              <?php echo "<a class='btn btn-warning' href='dupliqueractivite.php?activiteID=".$donnees['activiteID']."'> Dupliquer </a>";?>
              <?php echo "<button type='button' class='btn btn-danger' data-toggle='modal' data-target='#message". $donnees['activiteID']."'> Supprimer</button>";?>
 
              <div id="message<?php echo $donnees['activiteID'];?>" class="modal fade" role="dialog">
                <div class="modal-dialog">
 
              <!-- Modal content-->
              <div class="modal-content">
                <div class="modal-header">
                  <button type="button" class="close" data-dismiss="modal">&times;</button>
                  <h4 class="modal-title">Suppression</h4>
                </div>
                <div class="modal-body">
                  <p>Voulez-vous supprimer cette activité ?</p>
                  <?php echo $donnees['activiteID']. ' - '.$donnees['activiteNom'];?>
                </div>
                <div class="modal-footer">
                  <button type="button" class="btn btn-default" data-dismiss="modal">Annuler</button>
                  <?php echo "<a class='btn btn-danger' href='deleteactivite.php?activiteID=".$donnees['activiteID']."&"."activiteNom=".$donnees['activiteNom']."'> Supprimer </a>";?>
                </div>
          </div>
        </div>
      </div>
            </div>
            <div class="card-footer text-muted">
              Cycle : <?php echo $donnees['activiteLevel'];?>
            </div>
            <br/>
          </div>
 
 
 
        <?php
        }
        $reponse->closeCursor();
        ?>

Le script

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
$('.activiteAttente').on(hover, function(){
          var attentes = $(this).val();
          console.log(attentes);
          $.ajax({
               url:"infoAttentes.php",
               dataType:"html",
               method:"GET",
               data:{attentes:attentes},
               success:function(data){
                    alert(data);
 
               }
          });
Et le PHP
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
include 'bsd.php';
include 'index.php';
if (isset($_GET['attentes']))
{
    $sql = $bdd->query("SELECT * FROM attentes_fondamentales WHERE attentesNom = ?");
    $req = $bdd->prepare($sql);
    $req->execute(array($_GET['attentes']));
    while($donnees = $req->fetch()){
        $detail = $donnees['Section']. ' - ' . $donnees['Cours']. ' - ' . $donnees['matieresID'];
    }
$req->closeCursor();
echo $detail;
}
?>

Dès que je passe sur l'élément , j'ai une alerte console me disant :

jquery.min.js:2 Uncaught TypeError: Illegal invocation
at i (VM547 jquery.min.js:2)
at jt (VM547 jquery.min.js:2)
at jt (VM547 jquery.min.js:2)
at jt (VM547 jquery.min.js:2)
at jt (VM547 jquery.min.js:2)
at Function.w.param (VM547 jquery.min.js:2)
at Function.ajax (VM547 jquery.min.js:2)
at HTMLParagraphElement.<anonymous> (script.js:495)
at HTMLParagraphElement.handle (VM547 jquery.min.js:2)
at HTMLParagraphElement.dispatch (VM547 jquery.min.js:2)
Si quelqu'un peut m'expliquer ce que je dois faire dans ce cas la , ce serait sympa

Merci d'avance