[..] Fonction _WinHttpSimpleSendRequest incompréhensible.

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Domie
Niveau 1
Niveau 1
Messages : 7
Enregistré le : lun. 07 mars 2011 13:18
Status : Hors ligne

[..] Fonction _WinHttpSimpleSendRequest incompréhensible.

#1

Message par Domie »

Bonjour,

je suis tombé sur cette fameuse fonction, _WinHttpSimpleSendRequest. Cependant, je n'arrive pas à comprendre son fonctionnement.

J'ai vu quelques exemples mais je ne comprend toujours pas.
Donc ce que je voudrais faire c'est que la fonction remplit se formulaire :

Code : Tout sélectionner

<form action="add.php" method="post">
    Objet = <input type="text" name="objet" /><br />
    Sujet = <input type="text" name="sujet" /><br />
    Message = <input type="text" name="message" /><br /><br />
    
    <input type="submit" name="Valider" value="Valider" />
</form>
Cette page s'appel addnews.html

J'ai essayer ce code mais ça ne marche pas :

Code : Tout sélectionner

#include <WinHttp.au3>

$Open = _WinHttpOpen()
$Connect = _WinHttpConnect($Open, "http://127.0.0.1/addnews.html")
_WinHttpSimpleSendRequest($Connect, "Post", "add.php", Default, "objet=test&sujet=test&message=test&Valider=Valider")
C'est par ici que je suis perdu justement.

Voilà merci de votre aide ^^

Bonne journée :p
Avatar du membre
zeshrek
Niveau 10
Niveau 10
Messages : 984
Enregistré le : mer. 17 nov. 2010 09:31
Localisation : Sur ma chaise
Status : Hors ligne

Re: [..] Fonction _WinHttpSimpleSendRequest incompréhensibl

#2

Message par zeshrek »

Cette fonction vient d'un UDF ( a priori WinHttp.au3 d'apres le mini bout de code que tu nous file) en tout cas elle ne fait pas partie des fonctions 'standard' d'autoit (le mien ne la connait pas en tout cas)

Logiquement si l'UDF est bien foutu, dedans tu as un mode d'emploi, et le mail de son auteur.
Avec un peu de chance il l'aura posté sur le forum US, et donc il devrait y avoir un topic là dessus.

Enfin, cet UDF, je ne l'ai pas et je ne dois pas etre le seul dans cette situation. Tu aurais peut etre pu a la limite mettre un lien vers l'endroit ou tu l'as trouvé ?

En clair, tu pourrais peut etre chercher un tout petit peu par toi même, ou bien nous donner un minimum de billes pour qu'on puisse t'aider !
Si vis pacem para bellum
mystere
Niveau 4
Niveau 4
Messages : 62
Enregistré le : ven. 26 nov. 2010 22:37
Status : Hors ligne

Re: [..] Fonction _WinHttpSimpleSendRequest incompréhensibl

#3

Message par mystere »

Savoir utiliser cette udf est ces fonction est très bien, car pour moi ces le meilleur udf d'Autoit mais ces vrai quelle est complexe a utilisé moi même je la comprend pas entièrement. J'ai déjà réussi a envoyer de s requête sur des formulaire, mais sur d'autre sa coince.

Et tu sur d'envoyer la bonne commande a la requête, le faire manuellement c'est bien mais on ce trompe souvent. Instale ce module complémentaire sur Firefox et test ta requête via le navigateur une foie que tu a lancer ce module. En faite ce module est un snifer des requêtte http que tu envoi sur un quelconque serveur, il te dit tout.

LiveHTTPHeader
https://addons.mozilla.org/fr/firefox/a ... p-headers/

J'ai mi également dans ce poste les 2 udf que j'utilise.

Perso comme sa sans bonne explication je te dirai d'essayé ceci mais généralement on ne trouve pas du premier coup.

Code : Tout sélectionner

$Connect = _WinHttpConnect($Open, "http://127.0.0.1/addnews.html")
_WinHttpSimpleSendRequest($Connect, "Post", "add.php", Default, "Valider=Valider&objet=test$sujet=test")
A tu renseigner l'udf

Code : Tout sélectionner

#include<WinHttp.au3>
avant d'appelé la fonction ?
Si tu la fait tu ne devrai pas avoir d'erreur Autoit, ces simplement que la requête n'est pas bonne.

Bon voilà ce que je peut te dire de la fonction en tout ce que je sais.

_WinHttpSimpleSendRequest($hConnect, $sType = Default, $sPath = Default, $sReferrer = Default, $sData = Default, $sHeader = Default)

$hConnect = Le nom de la variable qui fait appel a ton header via la fonction _WinHttpOpen (en gros dans cette fonction tu indique ton user agent, si tu passe par un proxy...etc).
$sType = La méthode de connéxion de la requête $_POST ou $_GET (par default $_GET).
$sPath = La page de départ de la requête.
$sReferrer = La page d'arrivé de la requête.
$sData = La commande de ta requête.
$sHeader = ????? (je ne sais pas)

Tu cou moi aussi je demande vôtre aide car j'aimerai bien savoir a que que la variable $sHeader dans cette fonction.

Je bloque également sur ce formulaire

<form id="form1" method="post" action="login.php" class="searchform">
<label>Username:</label>
<input class="textbox" type="text" name="pseudo" value="" />
<label>Password:</label>
<input class="textbox" type="password" name="mdp" value="" />
<input type="submit" name="inputsubmit1" class="button" value="Sign In" />
<p><a href="page_lostpassword.php">Mot de passe perdu</a></p>
</fieldset>
</form>

Lorsque je me suis connecté sure le site je sus rediriger sur cette page page_membre.php.

Voici ma requête.

Code : Tout sélectionner

_winhttpsimplesendrequest($connexion, "Post", "/page_connexion.php", "http://" & $site & "/login.php","pseudo=" & $identifiant & "mdp=" & $passe & "inputsubmit1=Sign+In")
Du coup je ne sais pas pourquoi je n'arrive pas a me connecté. J'ai aussi éssay sa mais je n'arrivge toujours pas a me connecter.

Code : Tout sélectionner

_winhttpsimplesendrequest($connexion, "Post", "/page_connexion.php", "/login.php","pseudo=" & $identifiant & "mdp=" & $passe & "inputsubmit1=Sign+In")
A mon avis on doit préciser que l'url est redirectionné et peut être grâce a la variable $sHeader.

Merci de nous répondre.
Fichiers joints
WinHTTP.rar
WinHTTP udf
(15.62 Kio) Téléchargé 123 fois
Répondre