Comment obtenir jQuery autocomplete avec PHP + MySQL Ajax et passer de JavaScript
J'ai un code javascript que j'utilise pour ma saisie semi-automatique fonctionnalité de recherche et il fonctionne très bien. Mais si vous regardez le code ci-dessous, les données que la fonction de recherche est de retour est codée en dur et je veux récupérer les données de MySQL à l'aide de PHP.
Quelqu'un peut m'aider comment faire pour convertir le code ci-dessous pour utiliser PHP requête pour recueillir des données MySQL puis utiliser les résultats et les transmettre à javascript? Merci.
//<![CDATA[
var a1;
var a2;
function InitMonths() {
a2.setOptions({ lookup: 'January,February,March,April,May,June,July,August,September,October,November,December'.split(',') });
}
function InitWeekdays() {
a2.setOptions({ lookup: 'Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday'.split(',') });
}
jQuery(function () {
a1 = $('#query').autocomplete({
width: 448,
delimiter: /(,|;)\s*/,
lookup: 'Andorra,Azerbaijan,Bahamas,Bahrain,Bangladesh,Barbados,Belarus,Belgium,Belize,Benin,Bhutan,Bolivia,Bosnia Herzegovina,Botswana,Brazil,Brunei,Bulgaria,Burkina,etc'.split(',')
});
a2 = $('#months').autocomplete({
width: 448,
delimiter: /(,|;)\s*/,
lookup: 'January,February,March,April,May,etc'.split(',')
});
$('#navigation a').each(function () {
$(this).click(function (e) {
var element = $(this).attr('href');
$('html').animate({ scrollTop: $(element).offset().top }, 300, null, function () { document.location = element; });
e.preventDefault();
});
});
});
qui de saisie semi-automatique plugin utilisez-vous? Je vois que vous êtes à l'aide de jquery, vous voudrez peut-être chercher à l' $.méthode post.
Je suppose que c'était le jQuery UI, mais il semble que c'est devbridge.com/projects/autocomplete/jquery
oui, il est basé sur devbridge de saisie semi-automatique.
Voir ma réponse mis à jour ci-dessous
Je suppose que c'était le jQuery UI, mais il semble que c'est devbridge.com/projects/autocomplete/jquery
oui, il est basé sur devbridge de saisie semi-automatique.
Voir ma réponse mis à jour ci-dessous
OriginalL'auteur webdev.gk | 2012-08-31
Vous devez vous connecter pour publier un commentaire.
Nouveau
Basé sur cette auto complet plugin http://www.devbridge.com/projects/autocomplete/jquery/
Votre JavasSript aurez besoin de regarder quelque chose comme:
Et PHP (search.php) doivent être:
Le plugin s'attend à ce json comme ci-dessous qui présente PHP doit fournir
Note, je ne l'ai pas testé, mais ça devrait être bon!
Vieille Réponse
Voir ici: http://www.simonbattersby.com/blog/jquery-ui-autocomplete-with-a-remote-database-and-php/
Tout d'abord si vous n'êtes pas à l'aide de jQuery autocomplete plugin (celle prise en charge par jQuery dans le cadre de jQuery UI) mettre le tout en place. http://jqueryui.com/demos/autocomplete/#remote
Vous vous demandez comment retravailler complètement le système.
Pour commencer, vous aurez besoin d'utiliser Ajax pour envoyer le match en chaîne à la base de données via PHP en tant que proxy, puis PHP devrez retourner les résultats et avoir le Javascript de les lire.
De sorte que vous aurez besoin de l'utiliser (comme la config):
Et quelque chose comme (comme PHP)
Ensuite, il ya quelque chose de mal avec votre PHP, vérifier pour les erreurs de syntaxe. Avez-vous connecté le script à votre base de données?
salut, oui quand j'ai essayé manuellement le script php, j'ai été en mesure d'obtenir des résultats exemple: localhost/recherche.le php?query=li ensuite, j'ai une liste de résultats mais sur la saisie semi-automatique de recherche d'entrée, il ne veut pas montrer quoi que ce soit.
Dans ce cas voir mon retravaillé répondre
Salut Pez, je vous remercie beaucoup. Le problème est le script PHP, le plugin nécessite le format que vous avez fournis. je vous remercie.
OriginalL'auteur Pez Cuckow
en réponse à Pez de la réponse ci-dessus, le tableau PHP structure n'a pas de travail pour moi. J'ai eu de la structure de mon tableau comme suit:
puis
Je suis à l'aide v1.2.7 de la bibliothèque disponible ici: https://github.com/devbridge/jQuery-Autocomplete
OriginalL'auteur craigh
Au lieu d'utiliser le plugin que vous avez utilisé, utiliser le plugin disponible sur le lien suivant :
Jquery UI Autocomplete
À l'aide de ce plugin, vous pouvez obtenir l'accès aux données de la base de données à l'aide de php. Il travaillera sûrement.
OriginalL'auteur Shantanu Nirale
Puisque vous êtes déjà à l'aide d'un plugin jQuery, je suppose que vous connaissez le jQuery. Dans le code ci-dessous je suis en utilisant une méthode jQuery appelé
$.post
qui est utilisé pour charger des données depuis le serveur sans recharger la page(ajax comme vous pourriez l'appeler)Sur votre php:
Je ne sais pas vraiment ce plugin jQuery vous êtes en utilisant pour la autosuggest. Mais vous voudrez peut-être essayer la saisie semi-automatique de jquery ui ou datalist en html5. Pas vraiment sûr de la prise en charge du navigateur. Mais voici un exemple:
-Je n'ai pas vraiment tester le code, alors laissez-moi savoir si cela ne fonctionne pas ou il y a quelque chose que vous ne comprenez pas.
Voici un lien vers le
$.post
méthode si vous souhaitez en savoir plus: http://api.jquery.com/jQuery.post/OriginalL'auteur Wern Ancheta