Clipper On Line • Ver Tópico - Enviar comando Http

Enviar comando Http

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

 

Enviar comando Http

Mensagempor Samuk.exe » 09 Set 2013 11:40

Boa Tarde... Preciso enviar um comando para um sistema PHP.
Tentei usar o Connect do tHttp, mas só me retorna False!

Se alguem puder me ajudar!

Cod abaixo.

************
function vip
************
parameters nCupom , qLitros , vUnitario , dataCupom , horaCupom , cpfCliente

cUrl := "http://www.cmcsys.com.br/2013/integracao.php?modulo=cuponsFiscais&acao=adicionarCupomIntegracao&usuario=integracao&senha=1nt3gr4c4o&masterkey=autocom&codigoCliente=1020&parametro1="
cUrl := cUrl + alltrim(str(nCupom))      +";"
cUrl := cUrl + alltrim(str(qLitros))     +";"             && Formato 10.00
cUrl := cUrl + alltrim(str(vUnitario))   +"&parametro2="  && Formato 1.79
cUrl := cUrl + dataCupom   +";"             && Formato 05/09/2013
cUrl := cUrl + horaCupom   +"&parametro3="  && Formato 11:00
cUrl := cUrl + cpfCliente

oUrl := THttp():New()

     if oUrl:Connect( cUrl )
         msgInfo("Comando Enviado com Sucesso!")
     else
   msgInfo("Erro Ao Enviar Comando!")
     endif

return nil
Samuk.exe
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 65
Data de registro: 25 Mai 2010 15:58
Cidade/Estado: anapolis
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Enviar comando Http

Mensagempor Toledo » 09 Set 2013 14:29

Amigo, a utilização do THttp parece que está tudo certo, a única coisa que estranhei é o formato de alguns parâmetros que você está passando na URL, nas linhas 8 a 11 do seu código.

Tem certeza que pode passar . (ponto em qLitros e vUnitario), / (barra em dataCupom) e : (dois pontos em horaCupom)?

Faça um teste primeiro digitando a URL completa no seu navegador (Internet Explorer, FireFox, Opera, etc) e veja qual é o resultado.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar de usuário

Toledo
Administrador

Administrador
 
Mensagens: 3038
Data de registro: 22 Jul 2003 18:39
Cidade/Estado: Araçatuba - SP
Curtiu: 263 vezes
Mens.Curtidas: 258 vezes

Enviar comando Http

Mensagempor Samuk.exe » 09 Set 2013 15:39

Ola Toledo , tudo bom?

Obrigado pela resposta!
E sim, os parametros são esse padrão mesmo.
Faço o teste no navegador e funciona.

E quando coloco a Url do google, funciona mesmo.

Atualmente ultilizo um Bat, que manda esse Http pro navegador!
Mas tenho um incomodo abrir um navegador no cliente, que na maioria das vezes é bloquiado.

Estou fazendo teste com http:post(), mas tbm não estou conseguindo!

Só preciso enviar essa Url. Se houver alguma outra ideia de como fazer isso é só me falar tbm.

Abraços...
Samuk.exe
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 65
Data de registro: 25 Mai 2010 15:58
Cidade/Estado: anapolis
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Enviar comando Http

Mensagempor Samuk.exe » 11 Set 2013 08:51

Ninguem Mais?
Samuk.exe
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 65
Data de registro: 25 Mai 2010 15:58
Cidade/Estado: anapolis
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Enviar comando Http

Mensagempor asimoes » 11 Set 2013 14:37

Tenta isso:

oPg1 := Win_OleCreateObject("Microsoft.XMLHTTP")
TRY
   oPg1:Open("GET", cURL, .F.)
   oPg1:Send()
   cBuf1:=oPg1:responseText
   oPg1:=Nil
CATCH
   MsgInfo("Erro na consulta.")
   QUIT
END
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Enviar comando Http

Mensagempor Samuk.exe » 16 Set 2013 16:58

Beleza Asimoes?!

Obrigado pela resposta...

Fiz o sugerido e deu:
Error WINOLE/1007 Argument error: OPEN (DOS Error 


Tentei até pelo site do google, e não deu!

Só um detalhe, pelo que andei estudando acho q o comando certo será com POST!

MAs tentei alguns exemplos mais sempre não dá!

:(
Samuk.exe
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 65
Data de registro: 25 Mai 2010 15:58
Cidade/Estado: anapolis
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Enviar comando Http

Mensagempor Samuk.exe » 16 Set 2013 19:59

Tentando com a Lib Tip:

oUrl := TURL():New( "www.cmcsys.com.br")
oUrl:cPath := "/2013"

oInternet:=TipClientHttp():new( oURL )

oUrl:cFile := "integracao.php"

IF oInternet:Open()
        msgInfo("Comando Enviado com Sucesso!")
else
   msgInfo("Erro Ao Enviar Comando!")
endif

return nil


Recebo o Erro :

Error BASE/1081 Operação não suportada: TIPCLIENTHTTP:new()


MAs alguma Dica?
Samuk.exe
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 65
Data de registro: 25 Mai 2010 15:58
Cidade/Estado: anapolis
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Enviar comando Http

Mensagempor yugi386 » 16 Set 2013 20:25

Prezado Samuk,

Tente isto:

procedure Internet()
local oHttp, oUrl
   
   oUrl := "http://www.integracao.php"
   oHttp:= TipClientHttp():New( oURL )
   oHttp:open(oUrl)
   oHttp:close()

Return
yugi386
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 82
Data de registro: 24 Jul 2008 10:36
Cidade/Estado: Minas Gerais
Curtiu: 0 vez
Mens.Curtidas: 27 vezes

Enviar comando Http

Mensagempor Samuk.exe » 16 Set 2013 23:29

BOa NOite yugi386, muito obrigado pela resposta

Baseado no seu consegui fazer funcionar!

Codigo Aprimorado abaixo:

************
function vip
************
parameters nCupom , qLitros , vUnitario , dataCupom , horaCupom , cpfCliente
local oHttp, oUrl
, cUrl

cUrl := "integracao.php?modulo=cuponsFiscais&acao=adicionarCupomIntegracao&usuario=integracao&senha=1nt3gr4c4o&masterkey=autocom&codigoCliente=1020&parametro1="
cUrl := cUrl + alltrim(str(nCupom))      +";"
cUrl := cUrl + alltrim(str(qLitros))     +";"             && Formato 10.00
cUrl := cUrl + alltrim(str(vUnitario))   +"&parametro2="  && Formato 1.79
cUrl := cUrl + dataCupom   +";"             && Formato 05/09/2013
cUrl := cUrl + horaCupom   +"&parametro3="  && Formato 11:00
cUrl := cUrl + cpfCliente

oUrl := TURL():New( "http://www.cmcsys.com.br")
oUrl:cPath := "/2013"

oHttp:= TipClientHttp():New( oURL )


oUrl:cFile := cUrl

If oHttp:open(oUrl)
   if oHttp:Read() != NIL
       msgInfo("Comando enviado Com Sucesso!")
   else
       msgInfo("Sem Conexão Com a Internet")
   endif
else
   msgInfo("Erro ao Enviar Comando!")
endif

oHttp:close()

return nil


Percebi que só enviava realmente o comando para o servidor somente se eu desse um Read!

Obrigado a Todos! :D
Samuk.exe
Usuário Nível 2

Usuário Nível 2
 
Mensagens: 65
Data de registro: 25 Mai 2010 15:58
Cidade/Estado: anapolis
Curtiu: 0 vez
Mens.Curtidas: 0 vez




Retornar para MiniGui

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 2 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro