Autor Tópico: Botão ao lado de um campo que possa executar métodos PHP  (Lida 4002 vezes)

Rui [Geocad]

  • Novato
  • *
  • Mensagens: 26
    • Email
Botão ao lado de um campo que possa executar métodos PHP
« Online: Abril 22, 2014, 11:40:00 am »
Saudações pessoal,

Já vi alguns tópicos solicitando ajuda para resolver este pequeno problema: Criar um botão ao lado de um campo, que possa executar métodos PHP na aplicação.
No entanto, ainda não encontrei nenhum com um exemplo prático de como realmente fazer isso.
Alguns sugerem utilizar o campo help, outros utilizar um campo imagem html, etc.
Estou retornando a este assunto, pois estou à procura de uma solução realmente prática para este problema.
A situação é a seguinte:
Tenho uma aplicação com um método PHP e gostaria de criar (ou mover) um botão que fique ao lado de um campo (numérico, texto, etc.), que possa executar este método, que por sua vez poderá realizar algum cálculo ou buscar informações para preenchimento de um outro campo no mesmo formulário.
Gostaria de uma dica com um exemplo prático, com algum código que possa ser analisado.
Obrigado pela ajuda.

Haroldo

  • Expert
  • *****
  • Mensagens: 6262
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Botão ao lado de um campo que possa executar métodos PHP
« Responder #1 Online: Abril 22, 2014, 02:43:36 pm »
pesquise no forum que achará sugestões.

Rui [Geocad]

  • Novato
  • *
  • Mensagens: 26
    • Email
Re:Botão ao lado de um campo que possa executar métodos PHP
« Responder #2 Online: Abril 22, 2014, 03:02:54 pm »
Já pesquisei bastante e não encontrei nenhum exemplo CLARO de como fazer isso.
Por isso ABRI este post novamente...

Haroldo

  • Expert
  • *****
  • Mensagens: 6262
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase

Rui [Geocad]

  • Novato
  • *
  • Mensagens: 26
    • Email
[RESOLVIDO] Botão ao lado de um campo que possa executar métodos PHP - 7.01.0020
« Responder #4 Online: Abril 22, 2014, 03:41:44 pm »
A quem interessar, resolvi o meu problema da seguinte maneira:

Meu problema:
Tenho um formulário único registro, e nele um campo numérico chamado "numero_arquivo", o qual, para preenchê-lo, preciso sempre saber qual o próximo número
consultando o ultimo valor registrado no banco de dados, executando uma consulta SQL (SELECT MAX(num_arquivo) FROM ...).

Minha Necessidade:
Para executar esta tarefa, gostaria de colocar um BOTÃO (ou algo semelhante) ao lado do campo "numero_arquivo", para fazer a pesquisa no banco de dados e preencher o campo sempre que necessitasse.

Minha Solução:
- Criei um campo chamado "proximo_numero_arquivo", numérico, que fica oculto.
- Nele criei uma função AJAX (onChange), chamada (proximo_numero_arquivo_onchange), onde coloquei o código SQL que busca o próximo numero no Banco de Dados e atualiza o campo "numero_arquivo".
- No HELP do campo "numero_arquivo" (tipo texto), coloquei o seguinte código:
<a href='#' style='text-decoration: none' onclick='do_ajax_NOME_DO_FORMULARIO_event_proximo_num_arquivo_onchange()'>
<img src='ico_mais.png' border='0' title='Próximo Número de Arquivo'>
</a>
- Desta forma, o link apresentado é uma IMAGEM que simula um botão e executa a função que necessito.

A versão do Scriptcase que estou utilizando é a 7.01.0020.

Espero que esta solução possa servir a outros com a mesma necessidade
« Última modificação: Abril 22, 2014, 03:44:30 pm por Rui [Geocad] »

Fbonline

  • Intermediário
  • ***
  • Mensagens: 171
  • Softmus IT Solutions
    • Softmus It Solutions
    • Email
Re:Botão ao lado de um campo que possa executar métodos PHP
« Responder #5 Online: Abril 22, 2014, 11:39:08 pm »
Muito bom Rui
Obrigado por compartilhar.

saulobborges

  • Expert
  • *****
  • Mensagens: 1392
    • SGi Sistemas
    • Email
Re:[RESOLVIDO] Botão ao lado de um campo que possa executar métodos PHP - 7.01.0020
« Responder #6 Online: Abril 23, 2014, 07:56:59 am »
A quem interessar, resolvi o meu problema da seguinte maneira:

Meu problema:
Tenho um formulário único registro, e nele um campo numérico chamado "numero_arquivo", o qual, para preenchê-lo, preciso sempre saber qual o próximo número
consultando o ultimo valor registrado no banco de dados, executando uma consulta SQL (SELECT MAX(num_arquivo) FROM ...).

Minha Necessidade:
Para executar esta tarefa, gostaria de colocar um BOTÃO (ou algo semelhante) ao lado do campo "numero_arquivo", para fazer a pesquisa no banco de dados e preencher o campo sempre que necessitasse.

Minha Solução:
- Criei um campo chamado "proximo_numero_arquivo", numérico, que fica oculto.
- Nele criei uma função AJAX (onChange), chamada (proximo_numero_arquivo_onchange), onde coloquei o código SQL que busca o próximo numero no Banco de Dados e atualiza o campo "numero_arquivo".
- No HELP do campo "numero_arquivo" (tipo texto), coloquei o seguinte código:
<a href='#' style='text-decoration: none' onclick='do_ajax_NOME_DO_FORMULARIO_event_proximo_num_arquivo_onchange()'>
<img src='ico_mais.png' border='0' title='Próximo Número de Arquivo'>
</a>
- Desta forma, o link apresentado é uma IMAGEM que simula um botão e executa a função que necessito.

A versão do Scriptcase que estou utilizando é a 7.01.0020.

Espero que esta solução possa servir a outros com a mesma necessidade
Bom a questão nesse caso é..!! Se houver várias pessoas executando a mesma rotina você terá muito provavelmente números duplicados de documentos, mas referente a sua necessidade e solução parabéns!!!

Thiago Martos

  • Iniciante
  • **
  • Mensagens: 70
  • Only god knows how this code works
    • TM SOLUÇÕES
    • Email
Re:Botão ao lado de um campo que possa executar métodos PHP
« Responder #7 Online: Março 11, 2015, 10:05:24 am »
Bom dia!

Eu sei que o tópico é antigo mas gostaria de dar uma sugestão caso sirva para alguém.

No evento ScriptInit você pode alterar o css do botão, campo, label, etc com o comando abaixo.

Código: [Selecionar]
print("
<style type='text/css'>
#id_sc_field_incluir_leitores{
background: url('http://valleyforge.edu/assets/images/pagination-forward.png') no-repeat;
border: none;
height: 30px;
cursor: pointer;
}
</style>
");

Para descobrir o "id" do campo basta visualizar o código html e inspecionar até achar o id="id_sc_<tipo_campo>_<nome_campo>"

Obs: usei isso para transformar um campo do tipo "Texto" em "botão" e coloquei um EventoAjax OnClick nele e funcionou perfeitamente.
Espero que ajude.
Desenvolvimento de APIs, extensões e sistemas robustos
Skype: thiago.martos
E-mail: thiago@thiagomartos.com
www.tmsolucoes.net

Kleyber

  • Expert
  • *****
  • Mensagens: 2232
    • Email
Re:Botão ao lado de um campo que possa executar métodos PHP
« Responder #8 Online: Março 11, 2015, 02:06:53 pm »
Boa dica, Thiago! Obrigado por compartilhar.
Kleyber Derick

ITIL® V3 Foundation Certified
Analista de Sistemas
São Luís - Maranhão
www.tkinformidia.net

pessanha

  • Expert
  • *****
  • Mensagens: 643
    • Email
Re:Botão ao lado de um campo que possa executar métodos PHP
« Responder #9 Online: Março 11, 2015, 03:06:44 pm »
valeu Thiago .....  muito bom !! vou usar esta dica ....

julianosc

  • Novato
  • *
  • Mensagens: 31
    • Email
Re:Botão ao lado de um campo que possa executar métodos PHP
« Responder #10 Online: Junho 03, 2016, 09:40:27 am »
Só para melhorar o código do Thiago, em vez de dar o "print" ele pode ser colocado no >> onApplicationInit  desta forma:
?>
<style type='text/css'>
   #id_sc_field_incluir_leitores{
      background: url('http://valleyforge.edu/assets/images/pagination-forward.png') no-repeat;
      border: none;
      height: 30px;
      cursor: pointer;
   }
   </style>
<?php

E não tem a chanse de aparecer a saída na tela.

Abraços.

Kleyber

  • Expert
  • *****
  • Mensagens: 2232
    • Email
Re:Botão ao lado de um campo que possa executar métodos PHP
« Responder #11 Online: Junho 03, 2016, 02:32:37 pm »
Show, Juliano!
Kleyber Derick

ITIL® V3 Foundation Certified
Analista de Sistemas
São Luís - Maranhão
www.tkinformidia.net