IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

HTML Discussion :

Balise <a> et Parametres POST/COOKIE


Sujet :

HTML

  1. #1
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Par défaut Balise <a> et Parametres POST/COOKIE
    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

  2. #2
    Membre Expert Avatar de Tober
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    824
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 824
    Par défaut
    j'aurais un "cheat code" pour toi
    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>
    c'est sale mais ca devrait marcher

  3. #3
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Par défaut
    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

  4. #4
    Membre Expert Avatar de Tober
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    824
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 824
    Par défaut
    en tout cas, je ne vois pas comment faire rien qu'avec un <a>
    on va voir ce que les spécialistes trouvent

  5. #5
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2007
    Messages : 109
    Par défaut
    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 ?

  6. #6
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Par défaut
    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 :

    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', '', '', '', '', '', '', ''))">
    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.

    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

  7. #7
    Membre Expert Avatar de Tober
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    824
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 824
    Par défaut

    c'est pas ce qu'on appelle une "usine à gaz" ?

  8. #8
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Par défaut
    sisi tout à fait

    Mais c'est un choix du client

  9. #9
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Par défaut
    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)

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 17
    Par défaut
    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.. )

  11. #11
    Membre Expert Avatar de Tober
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    824
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 824
    Par défaut
    lol c'est quoi la boîte où vous travaillez que je ne vienne pas

  12. #12
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Par défaut
    ahhhhh je viens de remarqué qu'on peu faire du

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    form = document.createElement('FORM');
    je devrais pouvoir faire quelque chose de ca

    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 )

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 17
    Par défaut
    Tu connais l'agence tous risques?
    Bah nous c'est pareil. Version programmeurs.

  14. #14
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Par défaut
    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 ) &lt;OR&gt; [0.7] (  &lt;AND&gt;  (   google,  ) )  )   &lt;IN&gt; (    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 ) &lt;OR&gt; [0.7] (  &lt;AND&gt;  (   google,  ) )  )   &lt;IN&gt; (    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 pas pourtant sur le site il s'executait bien dans le href ...

  15. #15
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2007
    Messages : 109
    Par défaut
    Là, mes compétences ne sont pas assez poussées

    Bon courage, je retourne à mon PHP

  16. #16
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Par défaut
    C'est bon il faut juste ajouter le formulaire à la page.

    Via un :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementsByTagName("body")[0].appendChild(form);
    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)

    bon je vais continuer de creuser ...

  17. #17
    Membre Expert Avatar de Tober
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    824
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 824
    Par défaut
    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é

  18. #18
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Par défaut
    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 ?

  19. #19
    Membre Expert Avatar de Tober
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2007
    Messages
    824
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 824
    Par défaut
    nan mais dans un href, a part une url, tu peux rien y mettre !
    href + (cookie || post) =

  20. #20
    Membre éprouvé Avatar de anthyme
    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 559
    Par défaut
    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

Discussions similaires

  1. [D2007/web] Proxy + POST + cookie?
    Par fredtheman dans le forum Langage
    Réponses: 0
    Dernier message: 01/12/2008, 15h42
  2. Mes parametres POST ne sont pas envoyés..
    Par Golgotha dans le forum Débuter
    Réponses: 13
    Dernier message: 11/06/2008, 12h27
  3. [Prototype] Envoi paramètres POST avec signe "?"
    Par hugo69 dans le forum Bibliothèques & Frameworks
    Réponses: 2
    Dernier message: 26/02/2008, 16h28
  4. [Probleme] memorisation parametres POST
    Par mbk-w dans le forum ASP
    Réponses: 8
    Dernier message: 24/04/2006, 11h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo