UI autocomplete et argument passer à la page.
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:
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:
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.