Boa noite pessoal, estou realizando uns testes com o shield ethernet e usando o exemplo de webserver consegui acender e apagar leds através de uma interface web.
Passando na url ?1 para acender e ?2 para apagar. Porém gostaria de saber se é possível passar mais de um parâmetro, tipo, ?1&led=2, onde o 1 seria o parâmetro para acender e o 2 o parâmetro dizendo que é o led 2 que deve ser acesso.

Abraços e obrigado.

Exibições: 575

Responder esta

Respostas a este tópico

Dados insuficientes.

Por favor, leia o tópico:

http://labdegaragem.com/forum/topics/sugest-o-de-como-postar

Muito obrigado,

  'Eiju

Celso,

Obrigado por compartilhar o tópico.

Ontem na correria acabei postando sem muitos detalhes. Tentei detalhar um pouco melhor agora, espero que fique um pouco mais claro.

Abraços e obrigado pelo retorno.

Bom dia a todos,

Reformulando minha duvida.

Estou testando algumas rotinas para acender leds via Internet usando o shield ethernet w5100. Estou conseguindo executar essa tarefa perfeitamente. Criei uma pagina HTML no codigo que monta 4 links para 4 leds diferentes.

Links:

<a href=\"?1\">Liga Led 1</a><a href=\"?4\">Desliga Led 1</a>

<a href=\"?2\">Liga Led 2</a><a href=\"?5\">Desliga Led 2</a>

<a href=\"?3\">Liga Led 3</a><a href=\"?6\">Desliga Led 3</a>

<a href=\"?4\">LigaLed 4</a><a href=\"?7\">Desliga Led 4</a>

Ao clicar num desses links, a rotina envia o parametro 1, 2, 3 ou 4 para que nessa outra rotina o sistema entenda qual led deve ser acesso. Segue rotina:

if(readString.indexOf("?1") >0) {
   liga(led1);
   } else if(readString.indexOf("?2") >0){
            liga(led2);
           } else if(readString.indexOf("?3") >0){
                    liga(led3);
                    } else if(readString.indexOf("?4") >0){
                             liga(led4);
                    }

Baseado nisso, é que vem a minha duvida: seria possível passar mais de um parametro através dos links citados acima?

Por exemplo, eu poderia passar a informação de qual led quero usar (?led=1 - led 1) e se quero apagar ou aceder (&st=2 - para acender).

No PHP por exemplo, podemos passar vários parametros na URL e depois captura-los através do $_GET['nome_parametro'].

Consigo fazer algo parecido com arduino? algo que ficasse uma url "?led=1&st=2" e o arduino pudesse separar esses dois parametros?

Abraços e obrigado a todos.

Boa tarde Pessoal,

Consegui passar mais de uma variável por url.

Depois de alguns testes consegui montar uma URL com duas variáveis, ficando basicamente assim:

client.println(F("<a href=\"?8&id=2\">Link de teste</a>"));

Esse link eu coloquei dentro do exemplo de webserver da própria biblioteca e na rotina abaixo eu verifico e faço as comparações necessárias:

if(readString.indexOf("?8") >0){
  Serial.println("passou aqui 8");

}

if(readString.indexOf("&id=2") >0) {
  Serial.println("passou aqui no id 2");
}

Não era 100% o que eu estava imaginando, mais resolveu.

Obrigado a todos.

Abraços.

Pessoal,

Na busca de outra informação, encontrei uma resposta do Jose Augusto Cintra no tópico http://labdegaragem.com/forum/topics/como-extrair-uma-inform... que resolveu meu problema.

Valeu José e obrigado a todos.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço