bonjour
J'aimerai créer une balise a avec un href comportant des paramètres POST (et non pas GET)
est ce possible ? (probablement avec du js mais je vois pas comment pour l instant)
merci![]()
bonjour
J'aimerai créer une balise a avec un href comportant des paramètres POST (et non pas GET)
est ce possible ? (probablement avec du js mais je vois pas comment pour l instant)
merci![]()
j'aurais un "cheat code" pour toi
c'est sale mais ca devrait marcher
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <form id="nomform" method="post" action="url de ton lien"> <a href="#" onclick="document.getElementById('nomform').submit(); return false;">ton lien</a> <input type="hidden" name="nom de la var a passe en post" value="valeur de la variable" /> <input type="hidden"... /> <input type="hidden"... /> </form>![]()
j'avais penser a un truc comme ça (et oui c'est sale lol)
mais je ne peux utiliser qu'une balise <a> ...
merci tout de même![]()
en tout cas, je ne vois pas comment faire rien qu'avec un <a>
on va voir ce que les spécialistes trouvent![]()
Quel est l'intéret de passer des variables POST dans une balise A ?
La method POST est justement fait pour cacher les variables et leurs valeurs dans l'URL de la page...
Je pense qu'il y a une autre méthode, avec un code propre pour transmettre tes valeurs et leurs variables.
As tu l'URL de ta page en ligne ou un bout de code pour nous expliquer ce que tu veux changer ou transmettre via ton formulaire ?
le truc c pas moi qui décide le code de destination car il n'est pas sur des serveurs maison et je dois créer des liens qui vont sur les pages de ces serveurs.
a vrai dire ce site est un google like, et moi je m'y connecte et je parse le html pour récupérer les liens des résultats de la recherche ...
Mais hélas ils ont vraiment une sale téte ...
un exemple :
cet fonction (qui en appel bien d'autres) en gros exécute un post de form un peu comme a fait Tober et ensuite on tombe sur l'un des résultats du site.
Code : Sélectionner tout - Visualiser dans une fenêtre à part <a class="ARCH-TIT" href="javascript:viewArticle(new Array('idarchive', 'source', 'K2DocKey', 'Biography', 'BiographyDoc', 'Geography', 'KeywordDoc', 'CompanyName', 'CompanyName', ''), new Array('697-22-LET_CAP', 'La Lettre Capital Finance', '/archives/LettresPro/697-22-LET_CAP.xml@lettre_pro_capital', '', '', '', '', '', '', ''))">
Et oui c'est dégueulasse mais je n'y peu rien
En tout cas de mon coté j ai un parseur html en java un logiciel proprio (pas de chez nous que je ne peux pas modifier) qui s'occupe d'executer le java pour récupérer les info et les rend dispo via un webservice que j'utilise pour créer des page asp.net (mouarf) mais le truc c que ce logiciel me laisse pas faire ce que je veux il me laisse juste passer les urls des résultats (d'ou le pourquoi je ne peux pas créer un formulaire coté asp.net car je ne peux récupérer qu'une URL)
Donc voila ... moi j'aurai jamais codé ça comme ça mais je n'ai pas le choix je doit m y adapter ...
Donc si vous avez des idées ...
Ps: je ne peux pas faire du bidouillage sur l'url (genre mettre les POST en GET dans l'url et je genere mon formulaire apres coté .net avec les variables) que je passe du java au .net car je ne doit pas faire ce type de manip sur un seul site mais sur une 40ene alors faut que ça soit générique et sans bidouille
PPS : bref je le sens mal pour ce site
EDIT : Bon autant donner le site bien que je pense pas que ça change grand chose : http://www.lesechos.fr/lettrespro/ca...last/index.htm![]()
![]()
![]()
![]()
![]()
c'est pas ce qu'on appelle une "usine à gaz" ?![]()
il y a peut etre un moyen de créer un formulaire en pur javascript (DOM?) ? si c le cas je met tout le javascript dans le onclic et basta ...
(désolé je ne suis pas très bon en javascript)
Désolé de pourrir le thread, je viens juste me moquer de mon collegue
AH AH AH AH AH AH AH AH AH AH AH AH
(désolé, c'est aussi beaucoup de frustration: je bosse sur un projet bien pire encore, alors, quand je peux moi aussi me moquer..)
lol c'est quoi la boîte où vous travaillez que je ne vienne pas![]()
ahhhhh je viens de remarqué qu'on peu faire du
je devrais pouvoir faire quelque chose de ca
Code : Sélectionner tout - Visualiser dans une fenêtre à part form = document.createElement('FORM');
sinon pour la boite c une bonne boite mais y a des fois des situations problématiques(cad les commerciaux qui vendent sans en parler au techniciens
)
Tu connais l'agence tous risques?
Bah nous c'est pareil. Version programmeurs.
Bon j en suis arriver a ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109 var form = document.createElement('form'); form.name = "viewArticleForm"; form.id = "viewArticleForm"; form.method="post"; form.action="http://archives.lesechos.fr/lettrePro/article.php"; pageNumber = document.createElement('hidden'); pageNumber.name = "pageNumber"; pageNumber.value = "1"; form.appendChild(pageNumber); displayUrl = document.createElement('hidden'); displayUrl.name = "displayUrl"; displayUrl.value = "http://archives.lesechos.fr/lettrePro/article.php"; form.appendChild(displayUrl); verityQuery = document.createElement('hidden'); verityQuery.name = "verityQuery"; verityQuery.value = " ( [1]( google ) <OR> [0.7] ( <AND> ( google, ) ) ) <IN> ( Data, Segment )"; form.appendChild(verityQuery); dateSelect = document.createElement('hidden'); dateSelect.name = "dateSelect"; dateSelect.value = ""; form.appendChild(dateSelect); startDate = document.createElement('hidden'); startDate.name = "pageNumber"; startDate.value = ""; form.appendChild(startDate); endDate = document.createElement('hidden'); endDate.name = "endDate"; endDate.value = ""; form.appendChild(endDate); LP_capital = document.createElement('hidden'); LP_capital.name = "LP_capital"; LP_capital.value = "TRUE"; form.appendChild(LP_capital); pageNumber = document.createElement('hidden'); pageNumber.name = "pageNumber"; pageNumber.value = ""; form.appendChild(pageNumber); searchMode = document.createElement('hidden'); searchMode.name = "searchMode"; searchMode.value = "4"; form.appendChild(searchMode); textField = document.createElement('hidden'); textField.name = "textField"; textField.value = "google"; form.appendChild(textField); confirmer_x = document.createElement('hidden'); confirmer_x.name = "confirmer_x"; confirmer_x.value = "6"; form.appendChild(confirmer_x); confirmer_y = document.createElement('hidden'); confirmer_y.name = "confirmer_y"; confirmer_y.value = "17"; form.appendChild(confirmer_y); idarchive = document.createElement('hidden'); idarchive.name = "idarchive"; idarchive.value = ""; form.appendChild(idarchive); source = document.createElement('hidden'); source.name = "source"; source.value = ""; form.appendChild(source); K2DocKey = document.createElement('hidden'); K2DocKey.name = "K2DocKey"; K2DocKey.value = ""; form.appendChild(K2DocKey); Biography = document.createElement('hidden'); Biography.name = "Biography"; Biography.value = ""; form.appendChild(Biography); BiographyDoc = document.createElement('hidden'); BiographyDoc.name = "BiographyDoc"; BiographyDoc.value = ""; form.appendChild(BiographyDoc); Geography = document.createElement('hidden'); Geography.name = "Geography"; Geography.value = ""; form.appendChild(Geography); KeywordDoc = document.createElement('hidden'); KeywordDoc.name = "KeywordDoc"; KeywordDoc.value = ""; form.appendChild(KeywordDoc); CompanyName = document.createElement('hidden'); CompanyName.name = "CompanyName"; CompanyName.value = ""; form.appendChild(CompanyName); form.submit();
Dieu que c'est moche
et en mettant tout dans un lien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part <a href="javascript:var form = document.createElement('form');form.name = 'viewArticleForm'; form.id = 'viewArticleForm';form.method='post';form.action='http://archives.lesechos.fr/lettrePro/article.php';pageNumber = document.createElement('hidden');pageNumber.name = 'pageNumber';pageNumber.value = '1';form.appendChild(pageNumber);displayUrl = document.createElement('hidden');displayUrl.name = 'displayUrl';displayUrl.value = 'http://archives.lesechos.fr/lettrePro/article.php';form.appendChild(displayUrl);verityQuery = document.createElement('hidden');verityQuery.name = 'verityQuery';verityQuery.value = ' ( [1]( google ) <OR> [0.7] ( <AND> ( google, ) ) ) <IN> ( Data, Segment )';form.appendChild(verityQuery);dateSelect = document.createElement('hidden');dateSelect.name = 'dateSelect';dateSelect.value = '';form.appendChild(dateSelect);startDate = document.createElement('hidden');startDate.name = 'pageNumber';startDate.value = '';form.appendChild(startDate);endDate = document.createElement('hidden');endDate.name = 'endDate';endDate.value = '';form.appendChild(endDate);LP_capital = document.createElement('hidden');LP_capital.name = 'LP_capital';LP_capital.value = 'TRUE';form.appendChild(LP_capital);pageNumber = document.createElement('hidden');pageNumber.name = 'pageNumber';pageNumber.value = '';form.appendChild(pageNumber);searchMode = document.createElement('hidden');searchMode.name = 'searchMode';searchMode.value = '4';form.appendChild(searchMode);textField = document.createElement('hidden');textField.name = 'textField';textField.value = 'google';form.appendChild(textField);confirmer_x = document.createElement('hidden');confirmer_x.name = 'confirmer_x';confirmer_x.value = '6';form.appendChild(confirmer_x);confirmer_y = document.createElement('hidden');confirmer_y.name = 'confirmer_y';confirmer_y.value = '17';form.appendChild(confirmer_y);idarchive = document.createElement('hidden');idarchive.name = 'idarchive';idarchive.value = 'test.js';form.appendChild(idarchive);source = document.createElement('hidden');source.name = 'source';source.value = 'La Lettre Capital Finance';form.appendChild(source);K2DocKey = document.createElement('hidden');K2DocKey.name = 'K2DocKey';K2DocKey.value = '/archives/LettresPro/827-3-LET_CAP.xml@lettre_pro_capital';form.appendChild(K2DocKey);Biography = document.createElement('hidden');Biography.name = 'Biography';Biography.value = '';form.appendChild(Biography);BiographyDoc = document.createElement('hidden');BiographyDoc.name = 'BiographyDoc';BiographyDoc.value = '';form.appendChild(BiographyDoc);Geography = document.createElement('hidden');Geography.name = 'Geography';Geography.value = 'FRANCE';form.appendChild(Geography);KeywordDoc = document.createElement('hidden');KeywordDoc.name = 'KeywordDoc';KeywordDoc.value = '';form.appendChild(KeywordDoc);CompanyName = document.createElement('hidden');CompanyName.name = 'CompanyName';CompanyName.value = 'EXALEAD';form.appendChild(CompanyName);form.submit();">clic here</a>
Encore plus moche mais surtout le javascript ne s'execute paspourtant sur le site il s'executait bien dans le href ...
Là, mes compétences ne sont pas assez poussées
Bon courage, je retourne à mon PHP![]()
C'est bon il faut juste ajouter le formulaire à la page.
Via un :
Bon le lien va bien vers le site mais la je n'arrive pas à l'article ou j aurai du arrivé ... (la page est rélativement vide y a que les banières ... bizarre)
Code : Sélectionner tout - Visualiser dans une fenêtre à part document.getElementsByTagName("body")[0].appendChild(form);
bon je vais continuer de creuser ...
Tu connais l'agence tous risques?
Bah nous c'est pareil. Version programmeurs.L'agence tous risques, c'est vraiment...
je parie que rien n'est posté![]()
mouarf comme quoi y a pas que dans notre boite que ça y va la fumette ...
Bon je viens de remarqué qu'il faut un cookie pour pouvoir se connecter a leur site ...
vous savez comment créer un cookie en javascript dans une balise href ?![]()
nan mais dans un href, a part une url, tu peux rien y mettre !
href + (cookie || post) =![]()
bin regarde ma précédente réponse j ai bien fait un post dans mon href
Edit oui ca fait une balise a de 3000 caracteres![]()
Partager