Page 1 sur 4
ajax Post et form

Publié:
16 Avr 2009 à 15:47
par Michael DELIQUE
Bonjour
j'ai un code ajax qui envois des données a un form, je passe les données par l'url en GET via un champ $$return et un @urlquerystring ça marche
hors il faudrait que je les envois données en post donc plus par l'url
mais là dans mon masque je fait comment pour les récupérer ?

Publié:
16 Avr 2009 à 16:10
par Michael DELIQUE
grrrr ya bien Request_Content mais ça fonctionne que pour les agents !
quelqu'un sait comment faire un Request_Content dans un form ?

Publié:
16 Avr 2009 à 16:15
par stloje
Je sais que c'est possible, mais je crois qu'il faut renseigner les champs en JavaScript. J'ai cherché moi aussi et j'ai pas encore trouvé.

Publié:
16 Avr 2009 à 16:17
par Michael DELIQUE
le premier qui trouve...
parceque la je suis en train de faire un code qui permet de faire un evaluate de formule en ajax sans passer par un agent c'est puissant !
par cotnre je voudrais eviter de charger l'url
à l abase je me suis inspiré de ça =>
http://dominoweb.blogspot.com/2006/07/a ... -sans.html

Publié:
16 Avr 2009 à 16:28
par stloje
Je viens de lire rapidement l'article et c'est bien ce que je pensais : c'est via JavaScript qu'on envoi les données en "Get". Tu as déjà utilisé un Framework Javascript? Celui auquel il est fait référence dans l'article est script.aculo.us qui lui-même se repose sur Prototype. C'est ce dernier que j'utilise, mais j'ai pas encore eu le temps de pousser les tests.

Publié:
16 Avr 2009 à 16:50
par stloje
Je t'envoi le lien vers le framework Prototype :
http://www.prototypejs.org
A partir de cette librairie, tu crées un objet de type Ajax dans lequel tu passe en paramètre le nom des champs et leurs valeurs. L'exemple que j'ai vu est le suivant :
new Ajax.Request('/some_url', {
method: 'get',
parameters: {company: 'example', limit: 12}
});

Publié:
16 Avr 2009 à 21:33
par Michael DELIQUE
re,
oui deja utilisé un framework js, mais j'aime bien faire et comprendre par moi même. je comptais aller farfouiller dans scriptaculous ou prototype pour voir comment ils font

Publié:
17 Avr 2009 à 10:13
par Michael DELIQUE
bon faut que je trouve comme faire le $_post php en domino

Publié:
17 Avr 2009 à 11:31
par stloje
Tu es bien parti pour gagner la course


Publié:
17 Avr 2009 à 11:47
par Michael DELIQUE
vue ce que je trouve non !

Publié:
17 Avr 2009 à 14:09
par Michael DELIQUE
bon apres recherche ya aucun moyen !
ça marche si on appel un agent avec la cgi Request_content, mais pour un form pas possible

Publié:
17 Avr 2009 à 16:48
par stloje
Tu vas essayer avec un framework JS?
J'ai déjà vue une base Notes qui utilisait le framework EXT Js où les paramètre étaient passés en argument. J'ai pas eu le temps de voir comment c'était fait, mais je sais que pour récupérer les arguments, le code utilisait le "DocumentContext" et appelait directement le nom des champs.
Je vais faire l'exercice la semaine prochaine avec Prototype et je te dirais si j'ai réussi et comment.
Prototype

Publié:
21 Oct 2009 à 09:31
par stloje
J'ai trouvé une réponse concernant l'envoi de données via le POST. Si ça t'intéresse toujours, je t'envoi la réponse.

Publié:
21 Oct 2009 à 09:34
par Michael DELIQUE
bien sur je prend !
Merci

Publié:
21 Oct 2009 à 10:01
par stloje
J'utilise la bibliothèque JavaScript "Prototype 1.6.0.3"
Lorsqu'on fait appel à Ajax en POST, il y a deux options que l'on peut utiliser : « parameters » et « postBody »
La première est celle par défaut. Il faut la renseigner sous la forme JSon. Le format est {'nomducham1' : ‘valeurduchamp1’, 'nomduchamp2' : ‘valeurduchamp2’, etc.}
La seconde (postBody) attend une chaine de caractères. C'est la valeur de la première option qui sera utilisée (parameters) si elle n'est pas renseignée.
Lors de l’appel en Ajax, l’information est placé dans le champ « REQUEST_CONTENT ».
Voici deux exemples en POST :
Exemple avec « parameters »
new Ajax.Request ("../" + agentName, {
method: 'post',
parameters: {"nomVue" : "VueAAfficher", "categorie" : "AfficheLaCatégorie"},
onSuccess: function(transport) {…}
}) ;
valeurs retrouvés dans le champ « REQUEST_CONTENT » : nomVue=VueAAfficher&categorie=AfficheLaCatégorie
Exemple avec « postBody »
new Ajax.Request ("../" + agentName, {
method: 'post',
postBody: "VueAAfficher&AfficheLaCatégorie",
onSuccess: function(transport) {…}
}) ;
valeurs retrouvés dans le champ « REQUEST_CONTENT » : VueAAfficher&AfficheLaCatégorie