<?php
try
{
$bdd = new PDO('mysql:host=localhost;dbname=autocomp', 'root', '', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}
catch (Exception $e)
{
die('Erreur : ' . $e->getMessage());
}
$req=$bdd->query('SELECT name FROM pays');
while($donnees = $req->fetch(PDO::FETCH_ASSOC))
{
// On ajoute les données dans un tableau
$suggestions[] = $donnees['name'];
}
echo json_encode($suggestions);
?>
(deuxieme chose inattendue : en selectionnant une valeur dans la liste, il me l'affiche dans la zone de texte, mais en dessous aussi??? je ne vois pas la ligne qui correspond à cet affichage.
je ne vois pas trop pourquoi tu fais appel à un fichier externe si tu ne lui passe pas de données avec le Jquery, tu pourrais aussi bien le mettre dans le même fichier.
<?php
try
{
$bdd = new PDO('mysql:host=localhost;dbname=autocomp', 'root', '', array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
}
catch (Exception $e)
{
die('Erreur : ' . $e->getMessage());
}
$req=$bdd->query('SELECT name FROM pays');
while($donnees = $req->fetch(PDO::FETCH_ASSOC))
{
// On ajoute les données dans un tableau
$suggestions[] = $donnees['name'];
}
$tab = '["'.implode('","',$suggestions).']"';
?> <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Test</title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery-ui-1.12.1/jquery-ui.js"></script>
<script>
$(function()
{
var tag = <?php echo $tab; ?>;
$("#tags").autocomplete({source: tag});
});
</script>
</head>
<body>
<p>test : <input id="tags"></p>
</body>
</html>
Merci pour ta réponse, c'est vrai qu'on peut le mettre sur la même page.
Mais avec la solution proposée, je n'ai plus du tout de suggestion.
J'ai trouvé une petite formation sur le sujet... je m'y colle.
JQUERY autocomplete
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
N'oubliez pas d'activer les erreurs PDO.