Récupération de donnée entre php et Javascript
Bonjour,
Je ne connais pas du tout php, et je dois modifier un code php pour récupérer une donnée dans une table MySQL et renvoyer le résultat à un fichier Javascript.
Peut-on, via Ajax, passer un paramètre (attribut data), faire un select dans le php, renseigner ce paramètre, et dans Javascript récupérer la valeur de ce paramètre.
J'ai essayé de modifier les fichiers Javascript et php, mais je n'arrive pas à récupérer cette valeur.
Avez-vous un exemple de code php et Javascript qui pourrait m'aider à résoudre ce problème ?
Merci d'avance.
ejazz75
Récupération de donnée entre php et Javascript
J'ai trouvé une explication à mon problème que j'ai essayé, mais ça ne fonctionne toujours pas.
L'explication disait ceci :
pour passer une variable $nom de PHP vers Javascript, il suffit de la définir comme suit dans le code Javascript :
var NomVariable = '<?php echo $nom; ?>' ;
J'ai suivi l'exemple, et quand j'affiche la valeur de ma variable dans Javascript, j'obtiens la chaine de caractères correspondant à l'instruction php initiale. C'est comme si l'instruction php n'a pas été interprétée pour valoriser ma variable Javascript avec l'echo de la variable php.
Avez-vous une explication ou un exemple de code instructif ?
Merci d'avance pour votre aide.
ejazz75
Récupération de donnée entre php et Javascript
Bonjour,
Merci pour ta réponse.
L'extension du fichier est .html
En fait, dans ce .html, on a une partie en script JS que je n'ai pas encore extraite dans un fichier en .js
ejazz75
Récupération de donnée entre php et Javascript
Merci pour vos réponses.
Maintenant que j'ai créé des fichiers .js et .css pour n'avoir que du html dans mon fichier .html, est-ce que vos réponses sont toujours valides après ces modifications. Je n'ai pas de connaissance en php, et j'ai un peu de mal à comprendre vos propositions de solutions.
En tout cas, je vais essayer ce que vous proposez avant d'avoir d'autres pistes.
Merci.
Récupération de donnée entre php et Javascript
Merci pour tes explications bien précieuses et très instructives pour moi.
Je voudrais juste rappeler le contexte de mon travail :
- je suis entrain de tester une toute petite application qui nécessite de sauvegarder des données dans une BD et de les restituer par la suite
- au niveau fichiers, j'ai un .html qui appelle des .js, puis des .js qui appellent des .php
- au niveau BD, j'ai une table MySQL sous WAMP
- j'utilise ajax
J'ai fait des petites modifications sur ces fichiers et lancer mes tests, résultats :
- au niveau sauvegarde des données, c'est OK
- au niveau restitution, c'est KO, bien que côté php je retrouve bien les données, mais côté JS, j'ai soit une chaîne de caractères correspondant à l'instruction initiale php, soit de l'espace, la récupération des données sous JS doit être quelque chose de spéciale que je ne connais pas
Je ne sais pas si ce rappel peut modifier ta vision des problèmes que je rencontre pour me proposer une solution.
Ne connaissant pas du tout php, je ne sais pas si cela est facile à résoudre.
En cherchant des exemples de codes, je n'ai rien trouvé de concluant.
Merci encore pour tes explications.
Récupération de donnée entre php et Javascript
Merci encore pour tes réponses.
Tu as bien saisi ce dont je voulais faire.
Mais malheureusement, mes tests se font en local, et comme je suis nul en php, je n'utilise pas du tout les structures XML. Je modifie simplement des codes php existant qui sont peut-être erronés à la base ou tout simplement obsolètes. Je n'en sais strictement pas grand chose sur l'état exacte de ces codes, tant qu'ils fonctionnent et satisfont à mes demandes, cela me suffit amplement.
Le code que j'ai trouvé ressemblent à peu près à cela :
Code:
1 2 3
| $.ajax({type : .... ,
url : .... ,
data : ....} |
Comment récupérer les données des paramètres passés par data dans mon fichier .js ?
Toujours et encore merci pour ton aide.
Récupération de donnée entre php et Javascript
Merci.
Ce qui prouve bien mon incompétence dans bien d'autres domaines. :D
Et par conséquent, ton aide m'est bien utile.
Récupération de donnée entre php et Javascript
Donc si j'ai bien compris :
1° - dans mon fichier .php, je rajoute le script du genre :
echo "<script>";
echo "var NomDeMaVariableJs='".$nom."';";
echo "</script>";
2°- dans mon fichier .js, que faut-il rajouter après ajax(....);
- faut-il faire un eval(); de quelque chose ???
car si je fais un alert(); sur la var NomDeMaVariableJs, cette dernière n'est pas connue dans le fichier .js
Je suis un peu perdu dans les petites modifications à faire.
Merci de m'éclairer si possible.
Récupération de donnée entre php et Javascript
J'ai bien la fonction success que j'ai modifiée.
Je fais un test pour savoir si la variable est vide, puis je fais un alert() de la variable et j'obtiens :
undefined
Elle doit contenir une chaîne de caractères tout simplement.
As-tu une explication ?
Récupération de donnée entre php et Javascript
Apparemment, la variable définie dans le fichier .php (var NomDeMaVariableJs) n'est pas du tout connue dans l'exécution de la fonction success.
Je teste sous Firefox, et dans Firebug, je constate bien :
ReferenceError: NomDeMaVariableJs is not defined
avant de pouvoir faire alert()
Si je déclare cette variable, j'ai bien l'alert() avec undefined, mais ça n'a pas de sens de re-déclarer cette variable.
On est sans doute pas très loin de la solution, mais il doit encore manquer un petit quelque chose pour obtenir la valeur de cette variable.
As-tu un idée ?
Récupération de donnée entre php et Javascript
Un grand merci pour ta dernière proposition.
J'ai testé tes fichiers et ça fonctionne super bien.
J'ai mis ta solution dans ma petite application, et j'obtiens bien tous les echo de mon fichier .php dans la console Firebug et tous les alert() dans la fonction success. Je ne connaissais pas du tout le paramètre dataType.
Je touche enfin au Graal grâce à ton aide.
Encore mille merci pour ton aide.