|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||||
|
Membre expérimenté
![]() Développeur de bug Inscription : janvier 2003 Messages : 516 ![]() |
Bonjour,
Je souhaitais faire la mise à jour d'une table mysql avec une méthode ajax (pas très pure Alors voilà sur ma page php un tableau avec avec des radiobutton; et je voudrais quant je clique sur l'un d'eux, mettre à jour ma table. page.php Code :
Code :
Code :
__________________
"le rhume distillation - L’estomac est la cucurbite, le cerveau le chapiteau, & le nez le réfrigérant par lequel s’écoule goutte à goutte le produit de la distillation." de Avicenne Le monde se divise en deux: ceux qui utilisent le tag et les autres.Un problème? venez en découdre! |
||||||
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() Inscription : octobre 2009 Messages : 122 ![]() |
A première vue, le code a l'air correct. Regarde dans les logs serveur si tu peux, la fonction php retourne peut-être une erreur.
Les librairies SQL pour traiter les requêtes sont bien disponibles dans ta fonction php ? Tu n'inclues rien donc je ne sais pas. Dans tous les cas, je pense que tu devrais tester si l'update s'est bien passé pour retourner quelque-chose au javascript qui fera quelque-chose en fonction. |
|
|
00
|
|
|
#3 | ||
![]() ![]() Andry Aimé Inscription : septembre 2007 Messages : 5 128 ![]() |
Bonjour,
Essaie de faire un alert sur le retour de la requête AJAX. Code :
Sinon, montre nous le code HTML généré pour le formulaire mais pas le php A+. |
||
|
|
00
|
|
|
#4 | ||
|
Membre expérimenté
![]() Développeur de bug Inscription : janvier 2003 Messages : 516 ![]() |
Merci de votre aide !
Apparemment, les includes se font bien: xhr.js pour la fonction changeFragmentRef(..), et j'ai ajouté un require_once pour inclure la class db.class.inc.php qui permet l'accès à la base par PDO dans le fichier action_ajax.php. Mais cela ne change rien. J'ai essayé d' afficher les POST dans action_ajax.php mais ils n'apparaissent jamais, c'est comme si cette page n'était jamais executée. Ensuite, je ne passe jamais dans la condition Code :
(xhr.readyState == 4 && xhr.status == 200) Voici le code généré pour page.php: Code :
__________________
"le rhume distillation - L’estomac est la cucurbite, le cerveau le chapiteau, & le nez le réfrigérant par lequel s’écoule goutte à goutte le produit de la distillation." de Avicenne Le monde se divise en deux: ceux qui utilisent le tag et les autres.Un problème? venez en découdre! |
||
|
|
00
|
|
|
#5 | |||
![]() ![]() Andry Aimé Inscription : septembre 2007 Messages : 5 128 ![]() |
Re,
Essaie de faire Code :
Citation:
|
|||
|
|
00
|
|
|
#6 |
![]() ![]() Andry Aimé Inscription : septembre 2007 Messages : 5 128 ![]() |
Un id doit être unique dans un document ![]() Et utilise l’événement onclick à la place de onchange. A+. |
|
|
00
|
|
|
#7 | ||||
|
Membre expérimenté
![]() Développeur de bug Inscription : janvier 2003 Messages : 516 ![]() |
Alors, j'ai utilisé l'evt onclick, ainsi qu'un id unique (effectivement c'est moins conflictuel).
J'ai viré le alert en fin de fonction changeFragmentRef(); et remplacé le contenu de xhr.onreadystatechange = function () {} par Code :
J'ai essayé Code :
![]() ----------------------------------------------------------- Pour limiter les possibilités d'erreur, j'ai définit mes 2 fonctions javascript dans la page.php qui se trouve maintenant dans le même répertoire que action_ajax.php; et le xhr.status a changé en 500 => pb sur le serveur. Mais quel pb??
__________________
"le rhume distillation - L’estomac est la cucurbite, le cerveau le chapiteau, & le nez le réfrigérant par lequel s’écoule goutte à goutte le produit de la distillation." de Avicenne Le monde se divise en deux: ceux qui utilisent le tag et les autres.Un problème? venez en découdre! |
||||
|
|
00
|
|
|
#8 |
![]() ![]() Andry Aimé Inscription : septembre 2007 Messages : 5 128 ![]() |
Re,
Le fichier qui fait la requête AJAX (en non pas le fichier javascript) et le fichier action_ajax.php sont dans le même répertoire? Si tu es sous linux, vérifie la casse. A+. |
|
|
00
|
|
|
#9 |
|
Membre expérimenté
![]() Développeur de bug Inscription : janvier 2003 Messages : 516 ![]() |
page.php et action_ajax.php sont dans le même répertoire: www
J'ai enlevé la déclaration des fonctions javascript utilisées pour les remettre dans xhr.js; et j'ai replacé xhr.js dans www/jscripts. Pas d'autres modifs, et maintenant le statut est 500 - internal Server Error. DOnc il doit trouver action_ajax.php?! Sinon, le serveur de dev est une distrib linux.
__________________
"le rhume distillation - L’estomac est la cucurbite, le cerveau le chapiteau, & le nez le réfrigérant par lequel s’écoule goutte à goutte le produit de la distillation." de Avicenne Le monde se divise en deux: ceux qui utilisent le tag et les autres.Un problème? venez en découdre! |
|
|
00
|
|
|
#10 |
![]() ![]() Andry Aimé Inscription : septembre 2007 Messages : 5 128 ![]() |
Met tes projets dans un dossier mais pas directement dans www.
|
|
|
00
|
|
|
#11 |
|
Membre expérimenté
![]() Développeur de bug Inscription : janvier 2003 Messages : 516 ![]() |
c'est le cas : c'est l'arborescence qui est ainsi :
Serveur/NomProjet/www_NomProjet (et non www)
__________________
"le rhume distillation - L’estomac est la cucurbite, le cerveau le chapiteau, & le nez le réfrigérant par lequel s’écoule goutte à goutte le produit de la distillation." de Avicenne Le monde se divise en deux: ceux qui utilisent le tag et les autres.Un problème? venez en découdre! |
|
|
00
|
|
|
#12 |
|
Membre expérimenté
![]() Développeur de bug Inscription : janvier 2003 Messages : 516 ![]() |
UN grand merci à vous deux, et un très humble pardon
j'ai trouvé l'erreur qui venait bien d'un include mal fait, la classe db dans action_ajax.php qui nécessitait l'include du fichier de conf (où est définit entre autre le nom de la bdd =>ah j'ai honte Mais il a tout de même fallut que j'aille dans les logs du serveur, pour comprendre. Enfin, ça marche ! ![]() @siddh: Très bon code en fait!
__________________
"le rhume distillation - L’estomac est la cucurbite, le cerveau le chapiteau, & le nez le réfrigérant par lequel s’écoule goutte à goutte le produit de la distillation." de Avicenne Le monde se divise en deux: ceux qui utilisent le tag et les autres.Un problème? venez en découdre! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com