2013-06-24 4 views
1

J'essaye de convertir un formulaire http avec des champs d'entrée dans un fichier de base que je peux jeter dans mon code de microcontrôleur. Il me manque quelque chose de basique, car le serveur n'accepte pas la valeur. Voici le code après avoir essayé de le convertir en paires nom-valeur des champs d'entréeSimple HTTP Post

<html> 
<body> 
    <form action="website" 
     enctype="multipart/form-data" method="post"> 
     <utcdatatime="2013-06-16T23:20:40"&leftsource="1"&rightsource="1"&automatictransfer="1"&eventstatus="1"&preferred="1"> 
    </form> 
</body> 
</html> 

Voici la version de champ de saisie:

<html> 
<body> 
    <form action="website" 
     enctype="multipart/form-data" method="post"> 

        <input type="text" name="utcdatatime" size="20" value="2013-06-16T23:20:40" /> 

        <input type="text" name="leftsource" size="2" value="1" /> 

        <input type="text" name="rightsource" size="2" value="4" /> 

        <input type="text" name="automatictransfer" size="2" value="4" /> 

        <input type="text" name="eventstatus" size="2" value="2" /> 

        <input type="text" name="preferred" size="2" value="1" /> 
        <input type="submit" value="Send" /> 
    </form> 
</body> 
</html> 

Je suis en mesure d'obtenir un poste de base, mais ce code est assez lourd pour un arduino pour construire puis envoyer, je ne peux pas non obtenir le / sur la deuxième ligne pour travailler dans l'Arduino mais je pense que je vais comprendre cela

POST /post_url.php HTTP/1.1 
Accept: text/html, application/xhtml+xml, */* 
Accept-Language: en-US 
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0) 
Content-Type: multipart/form-data; boundary=---------------------------7dd35a2aab1494 
Accept-Encoding: gzip, deflate 
Content-Length: 1018 
DNT: 1 
Host: website 
Pragma: no-cache 

-----------------------------7dd35a2aab1494 
Content-Disposition: form-data; name="customerkey" 

3432-1GH4-88RG-7B2A 
-----------------------------7dd35a2aab1494 
Content-Disposition: form-data; name="responsetype" 

simple 
-----------------------------7dd35a2aab1494 
Content-Disposition: form-data; name="filetype" 

sandc_microat 
-----------------------------7dd35a2aab1494 
Content-Disposition: form-data; name="gatewayid" 

0011223355AA 
-----------------------------7dd35a2aab1494 
Content-Disposition: form-data; name="leftsource" 

1 
-----------------------------7dd35a2aab1494 
Content-Disposition: form-data; name="rightsource" 

4 
-----------------------------7dd35a2aab1494 
Content-Disposition: form-data; name="automatictransfer" 

4 
-----------------------------7dd35a2aab1494 
Content-Disposition: form-data; name="eventstatus" 

2 
-----------------------------7dd35a2aab1494 
Content-Disposition: form-data; name="automatictransfer" 

1 
-----------------------------7dd35a2aab1494-- 

========================== POST END================================= 

Répondre

2

pourquoi ne pouvez-vous pas utiliser la version d'entrée? Vous pouvez toujours utiliser des champs « cachés » à la place des champs « texte »:

<input type="hidden" name="rightsource" value="4" /> <!-- size attr not required --> 

Aussi, sauf si vous envoyez des messages fichiers (de upload), je suis sûr que vous n'avez pas besoin enctype, cela insérer des données mime dans le poste, vous pouvez simplement l'enlever.

ce js violon devrait montrer un exemple d'un poste en fonction de vos besoins, ce qui crée une demande de poste sur le système arduino et l'envoie au site/post_url.php:

http://jsfiddle.net/terrykernan/8z2VF/

+0

Je suis en train de Convertissez-le en POST pour que je puisse compiler un microcontrôleur (Arduino) et le POST lui-même. – napkinsterror

+0

si vous faites un post simple sans l'enctype, est-ce que l'arduino le ramasse? –

+0

avez-vous vu ce lien: http://forum.arduino.cc/index.php?topic=155218.0 –