Remplir des champs suite à une autocomplétion
Bonjour,
Je suis en train de réaliser mon premier formulaire PHP. Il s'agit d'un formulaire permettant à des propriétaires d'enregistrer les dates d'occupations de leurs logements : demo
Dans ce formulaire, j'ai réalisé une autocompletion sur le premier champs "logement" permettant de récupérer les logements insérés précédemment en base de données. Pour cela, j'ai utilisé le widget jquery.
La prochaine étape consiste à récupérer les données du logement sélectionné dans le champ de l'autocompletion et de les ajouter dans les champs correspondants (adresse, cp, ville, propriétaire...). Mais je colle sur ce point...
J'ai vue qu'il existait une option "select" sur la fonction "autocomplete" permettant d'exécuter une action à la sélection :
Code:
1 2 3 4 5 6 7 8
| //Autocompletion logement
$('#logement').autocomplete({
source : 'liste.php',
autoFocus: true,
select : function( event, ui ){
$( "#adresse" ).val( ui.item.value );
}
}); |
Code de "liste.php" :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| <?php
include ('config.inc.php');
try {
$bdd = new PDO($hote, $user, $password);
}
catch (Exception $e){
die('Erreur : ' . $e->getMessage());
}
$term = $_GET['term'];
$requete = $bdd->prepare('SELECT * FROM logement WHERE nom LIKE :term'); // j'effectue ma requête SQL grâce au mot-clé LIKE
$requete->execute(array('term' => '%'.$term.'%'));
//STOCKAGE DES DONNEES
$array = array(); // on créé le tableau
while($donnee = $requete->fetch()) // on effectue une boucle pour obtenir les données{
array_push($array, $donnee['nom']); // et on ajoute celles-ci à notre tableau
}
echo json_encode($array); // il n'y a plus qu'à convertir en JSON
?> |
Le soucis c'est que je ne sais pas comment faire le lien entre mon fichier JSON "liste.php" regroupant le nom de tous mes logements avec la fonction que j'applique sur le select.
Quelqu'un pourrait m'aider afin d'avancer sur ce point ?
Merci