Bonjour à tous, cela fait un petit moment que je bidouille mon arduino grâce à mon-club-elec.fr
Je souhaiterais faire une "textbox" (je ne suis pas bien sur du nom ^^) la petite barre à gauche du bouton Search en haut de cette page
J'ai réussi tout ce qui est connexion avec le Shield Ethernet,
Cependant je ne sais pas comment coder cette petite partie, j'ai réussi à insérer des checkbox et autre mais je bloque totalement aprés.
Le but de se programme serait d'envoyer une chaine de caractère à l'arduino pour l'afficher sur un ecran LCD 16*2.
Si quelqu'un à une piste ou un petit bout de sketch pour me lancer ce serait vraiment sympa car je suis dessus depuis 2 jours ^^
Cordialement,
Trigger
[EDIT] je pensais que certaines personnes avaient déjà tenté l'experience ...
J'ai trouvé l'erreur pour afficher le label et la textbox, voici le code :
Cette partie nécessite des compétences en langage HTML (c'est un langage qui s'exécute coté client, avec ton navigateur web)
Pour afficher un "textbox", comme tu dis,c'est simple, ce qu'y l'ai moins, c'est d'exploiter les données ; car normalement, il faut réaliser un formulaire en HTML avec des balises ; les champs du formulaire sont ensuite envoyés au serveur en "GET" ou "POST".
Je te conseil "le site du zero" pour tout ce qui est gestion des formulaire en HTML.
La page web s'affiche correctement avec la textbox et le label cependant je n'ai aucune idée de comment récuperer la chaine saisie dans la textbox, une piste ou une idée serait le bien venu
if (client.available()) {
char c = client.read();
if (readString.length() < 100)
{
//store characters to string
readString += c; //replaces readString.append(c);
}
//output chars to serial port
Serial.print(c);
//if HTTP request has ended
if (c == '\n') {
if (readString.indexOf("?") <0)
{
//on fait rien
}
}
else
//lets check if LED should be lighted
if(readString.indexOf('chaine=test"))//test est la chaine rentrée par exemple
{
//on fait quelque chose
}
Cependant il semble que quelque chose m’échappe, je tente de rajouter un morceau de code a celui que j'ai récupérer sur mon-club-elec ( au passage grand bravo pour les tutos de cette mine d'or).
Du coup sur la page j'ai deux boutons mais lorsque je clique sur l'un l'autre devient inexistant, il a des astuces pour lier les boutons ?
Je reviens pour dire que j'arrive bien à déterminer si il y eu saisie de texte ou non et faire une action en suivant.
Cependant je n'arrive pas à récupérer la chaine de caractères (pour ensuite l'afficher sur un LCd) quelqu'un à une idée ?
Bonjour,
Je vais avoir le même problème que toi.
Je participe à la gestation du projet de ce topic : http://arduino.cc/forum/index.php/topic,80422.0.html
Je vais avoir besoin de transférer des données depuis le web (ou au moins le réseau local dans un premier temps) qui correspondent à des plages horaires : heures et minutes de début de plage horaire et heures et minutes de fin de plage horaire.
Une (ou des) sortie(s) de l’Arduino devront être activées durant la plage horaire.
Je vais commencer d’ici peu à chercher des solutions et faire des essais, et ton travail va bien m’aider, merci.
Je me permettrai de te recontacter, d’ici quelques temps, lorsque j’en serai là, et que j’aurai très certainement des difficultés.
Content que tu trouves des inos utiles ici, cependant si quelqu'un à une piste pour extraire la chaine de caractère saisie dans la textbox je suis preneur parce que je trottine depuis deux jours ....
Après plusieurs heures à chercher et manipuler les chaines j'ai bricolé une solution qui fonctionne !
Si ça intéresse du monde (bon ok c'est vraiment du bricolage ^^ ) :
Il faut chercher les symboles qui sont aux extrémités de la chaine
Couper entre ces bornes
Et magie on récupère la chaine
Par contre attention à la saisie de plusieurs mots à la suite ( cf code)
En gros ça donne un truc comme ça :
int debutChaine= chaineRecue.indexOf('='); // cherche debut
int finChaine= chaineRecue.indexOf(' ',6); // cherche fin
maChaine = chaineRecue.substring(debutChaine+1,finChaine); // la chaine se trouve entre
maChaineCorrige = maChaine.replace("+", " "); // les espaces sont des + dans l'url