Bonjour,
je débute avec jquery en essayant d'implémenter autocomplete. J'ai donc téléchargé la dernière version jquery ui et mis en place des tests:
Code test.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 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <link type="text/css" href="static/jquery/css/custom-theme/jquery-ui-1.8rc2.custom.css" rel="Stylesheet" /> <script type="text/javascript" src="static/jquery/js/jquery-1.4.2.min.js"></script> <script type="text/javascript" src="static/jquery/js/jquery-ui-1.8rc3.custom.min.js"></script> <title>test image dossier</title> </head> <body> <script type="text/javascript"> $(function() { $("#input-search").autocomplete({ source: "search_json.php", minLength: 2 }); }); </script> <div class="ui-widget"> <label for="input-search">test: </label> <input id="input-search" /> </div> </html>
et le fichier de recherche suivant :
Code search_json.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
16
17
18
19
20
21
22
23
24
25
26 <?php include_once ('includes/database.php'); include_once ('includes/conn.php'); if(isset($_GET["q"])) { $q = $_GET["q"]; $sqlbd = "select distinct(".$_table_bd_nom.") from ".$_table_bd." where ".$_table_bd_nom." like \"%".$q."%\""; $resbd = mysql_query($sqlbd, $link) ; $result= array(); while ($tab = mysql_fetch_object($resbd)) { $result[]=$tab->$_table_bd_nom; } echo json_encode($result); } // $arr = array('one piece','war piece'); // // echo json_encode($arr); mysql_close($link); ?>
le problème est que je ne passe pas dans le "if" car l'argument q ne semble pas être donné en GET à ma page. Si je donne une réponse en du (les commentaires dans le fichier) tout semble bien fonctionner.
De même quand j'appel search_json.php?q=toto j'ai bien un résultat.
Je n'arrive pas à comprendre où se trouve le problème et comment le résoudre.
merci d'avance pour votre aide.
Partager