Bonjour,
après plusieurs essaie je me tourne vers vous pour enfin en finir avec mon problème.
Je m'explique :
je rempli une liste déroulante en php avec une requête sql.
je voudrais afficher le contenu de la page en fonction de la sélection de la liste.
Le contenu est également chargé par une requête sql qui comporte une condition (exemple : where id=id_Sélectionner_liste).
Et tout ca sans submit.
Je pars de ce code qui est un petit moteur de recherche avec autocomplétion
index.php
func.js
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 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <link rel="stylesheet" href="style.css"/> <title>Moteur de recherche</title> </head> <body> <form method="POST" action=""> <h1> Votre recherche</h1> <p> <input id="search" type="text" name="search"/> </p> </form> <div id="resultat"> <ul> </ul> </div> <div id="feedback">
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 $(document).ready(function() { $("#search").keyup(function() { var search=$(this).val(); search = $.trim(search); if(search!=="") { $.post("post.php",{search:search},function(data) { $("#resultat ul").html(data); //clique sur le lien $("a").click(function() { var lien = $(this).text(); $.post("show.php",{lien:lien},function(data) { $('#feedback').html(data); }); }); }); } }); });
post.php
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 <?php include ('connect.php'); if(isset($_POST["search"])&& !empty($_POST["search"])) { $search = htmlentities($_POST['search']); $query = mysql_query("select titre from news where titre like '$search%'") or die(mysql_error()); while ($rows= mysql_fetch_assoc($query)) { echo "<li><a href='#'>".$rows['titre']."</a></li>"; } } ?>
show.php
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 <?php include ('connect.php'); if(isset($_POST["lien"])&& !empty($_POST["lien"])) { $lien = htmlentities($_POST['lien']); $result = mysql_query("select * from news where titre ='$lien'") or die(mysql_error()); $row = mysql_num_rows($result); if($row == true) { while ($rows = mysql_fetch_assoc($result)) { echo"<p><strong>".$rows['titre']."</strong></p><br/>"; echo "<p>".$rows['message']."</p>"; } } } ?>
Ce code fonctionne. J'aimerais maintenant remplacer le input par une liste déroulante remplie par sql et que le contenu s'affiche en fonction de la sélection.
Je vous remercie d'avance du temps passé pour m'aider.
Cordialement,
Mapeinz
Partager