Bonsoir.
Tu devrais visionner Tutoriel Vidéo JavaScript » Ajax.
Il ne faut pas hésiter à vérifier sur le site, si un tutoriel concernant ce que tu cherches n'existe pas déjà, avant de venir demander de l'aide sur le forum.
Cela fait quand même un certain temps que tu es inscrit sur le site, c'est quand même étonnant que tu n'ais pas fait la recherche avant.
Bonjour,
Je débute en Ajax , j'ai essayé plusieurs tutoriel mais cela reste très très flou, c'est pour cela que j'en viens à vous demander de l'aide.
Je suis en train de créer une page où je souhaite récupérer des informations d'une base de données, selon une date sélectionnée.
Donc par exemple j'ai une table réservations, je veux afficher les réservations de tel à tel date avec un datepicker.
Je fais un formulaire avec un onclick:sendForm(); puis un id 'sdate', voila mon code JS :
Je récupère bien la date que j'ai saisie.
Maintenant j'aimerais retourner cette date à mon PHP afin de pouvoir la mettre dans une variable php et la mettre dans ma requête SQL .
Je ne m'en sort pas, je ne sais pas comment m'y prendre ..
Merci pour votre aide.
5 réponses
Hello @Fa fa-dev:
Si tu veux poster des data simplement en ajax, le plus simple est de charger jQuery et de le faire avec la méthode post
=> https://api.jquery.com/jquery.post/
Si tu tiens à le faire en pur JS; regarde sur la doc mozilla Dev
=> https://developer.mozilla.org/fr/docs/Web/API/XMLHttpRequest
Exemple en jquery :
Exemple en pur JS (plus fastidieux mais plus pédagogique :) ) :
Il faut utiliser l'objet XMLHttpRequest qui dispose de plusieurs propriétés et méthodes pour faire ce que tu veux (ci-dessous du post)
Tu peux évidemment aller bien plus loin avec l'objet xmlhttprequest, comme gérer l'état de la requête (de 1 à 4 entre le commencement et sa fin), ajouter des méthodes callback en cas de succès ou d'erreur.
Comme dit plus haut, si ça ne te suffit pas, cherche le tuto sur Grafikart, il y en a forcément sur Ajax ;)
La doc Mozilla developper reste "la référence" en JS mais on a souvent beoin de l'agrémenter d'exemples concrets en tuto
Côté jQuery, idem, c'est la doc jQuery :)
Pouvez vous me dire si je fais une erreur ..?
Tu en fais même plusieurs.
Première, tu dois définir une variable avant de l'utiliser (sdate).
Deuxième, que fais ta variable dans le send alors que tu récupères sa valeur via un paramètre GET ?
De plus que si tu voulais l'envoyer sous forme de données de formulaire, tu t'y prends mal.
Pour finir, au lieu d'écrire le code et de nous demander si tu fais une erreur ou non, fais des tests avant.
Comme l'explique Lartak sur les erreurs je n'ai rien à rajouter :)
Je pense que tu as besoin d'explications et de mise à niveau sur les bases du code. Après ça ira tout seul;
1/ Pour rappeller une variable dans le code, encore faut-il qu'elle soit déclarée et qu'on lui ait donné une valeur "au dessus"
donc ta première ligne dans ta fonction doit être :
2/ Tu as mélangé 2 choses : envoyer des valeurs via l'URL (c'est du GET), et vouloir envoyer les valeurs dans la méthode send() (c'est du POST). Tu peux faire l'un OU l'autre mais si c'est un formulaire c'est plus commun d'envoyer les valeur en POST
3/ Donc allons-y en POST :)
dans ton JS
dans ton PHP
Déjà dis-moi si ça, ça fonctionne ? ;)
PS :
N'oublies pas d'ouvrir la console chrome avec F12-> onglet console... si erreur, c'est là que tu les vois ...sinon tu ne peux pas les deviner.
Si tu as besoin de plus d'infos comme par exemple déterminer les headers d'une requête si besoin, formater tes valeurs avant envoi, gérer les différents états de ta requête AJAX (de 1 à 4). Tu as un tuto explicatif ici aussi => https://openclassrooms.com/courses/ajax-et-l-echange-de-donnees-en-javascript/l-objet-xmlhttprequest-1