POST et nouvelle page pour OnClick

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : POST et nouvelle page pour OnClick

Re: POST et nouvelle page pour OnClick

par ossy » 10 oct. 2020, 10:59

Bonjour Spols

Oui GET c'est plus simple. Je voulais le faire en POST pour apprendre et je n'y croyais pas un instant que c'est ci complique pour ma petite tète.

Merci

Osyy

Re: POST et nouvelle page pour OnClick

par Spols » 10 oct. 2020, 08:48

Pourquoi d'office en POST ?

si la quantité de donnée n'est pas énorme (l'ID d'une ligne par exemple, passer ton argument en GET sera plus simple. Notament avec window.location('page.php?param=valeur');

Re: POST et nouvelle page pour OnClick

par ossy » 09 oct. 2020, 21:40

Merci @athur

Je ne veux pas grand chose, mais je n'y arrive pas.
J'ai une table html. Quand je click sur une ligne, je lance une fonction avec onClick. Je veux récupère la valeur de la première colonne et envoyer cette valeur en POST sur une autre page.
Je le croyais simple, mais la je bute, snif

++
Ossy

Re: POST et nouvelle page pour OnClick

par @rthur » 09 oct. 2020, 20:57

window.location ça ne peut faire qu'un appel en GET .
Ne mets donc pas window.location.

Et avec ton appel Ajax normalement dans la console de ton navigateur web (Ctrl+Maj+i puis onglet réseau) tu devrais voir ton appel en POST.
Ensuite à toi de voir le traitement que tu veux faire

Re: POST et nouvelle page pour OnClick

par ossy » 09 oct. 2020, 19:55

Merci de vos réponses.

J'essai avec le code modifié, mais sans beaucoup de succès.

Code : Tout sélectionner

var toto = el.cells[0].innerHTML $.ajax({ type : 'POST', url : 'apiary.php', data : {'apiary':toto}, done: function(reponse){ window.location = reponse; } });
Je dois avoue que je ne comprend pas tout :(

Je ne sais pas non plus debugger Javascript et PHP.

Si vous avez un plus de conseil pour moi :) Merci

Ossy

Re: POST et nouvelle page pour OnClick

par @rthur » 09 oct. 2020, 14:41

+1 pour les outils de dev du navigateur : Ctrl+Maj+i puis onglet réseau pour voir les appels

Quoi qu’il en soit, si tu utilises :

Code : Tout sélectionner

window.location.replace("apiary.php");
forcément ça te redirige via un appel GET

Juste avant tu fais un appel Ajax mais tu ne fais rien de la réponse.
Logiquement tu devrais ajouter un .done() ou un paramètre success pour traiter le retour de ton appel Ajax.
Cf la doc Jquery : https://api.jquery.com/jquery.ajax/ ou ce tuto : https://openclassrooms.com/fr/courses/1 ... /r-1569584

Re: POST et nouvelle page pour OnClick

par or 1 » 09 oct. 2020, 14:11

il faut débugger avec les outils de développement de son navigateur.
y-a-t il une erreur javascript ?
l'url apiary.php est appelé en méthode post et/ou get ?

POST et nouvelle page pour OnClick

par ossy » 09 oct. 2020, 07:42

Bonjour à tous

Je n'arrive pas ç envoyer une variable en POST. Je tourne en round depuis un moment.

J'ai une table aliment par mysql. Mon TR est comme ceci:

Code : Tout sélectionner

echo "<tr onClick=\"GetTR(this);\">
......

et la fonctionne comme ceci:

Code : Tout sélectionner

function GetTR(el){ var toto = el.cells[0].innerHTML alert("ID="+toto); $.ajax({ type: 'POST', url: 'apiary.php', data: {'apiary': toto}, }); window.location.replace("apiary.php");
}

La nouvelle page est bien appeler, mais je n'ai pas la valeur POST.
Merci d'avance pour votre aide.

++
Ossy