Delphi x PHP

27/09/2004

Precisamos acessar uma base de dados Mysql, porem nosso provedor somente permite o acesso via PHP. Como podemos fazer isso rodando uma aplicacao Delphi ?
Grato


Fabio Ferreira

Respostas

27/09/2004

Aroldo Zanela

Colega,

Neste caso, você deve mudar de provedor.


Responder Citar

27/09/2004

Fabio Ferreira

Foi o que achamos tambem, inicialmente. Atualmente utilizamos a Digiweb. Porem pesquisando outros, do mesmo nivel de qualidade tambem esbarramos na mesma limitacao. Agora independente da nossa providencia a duvida continua existindo. É possivel fazer essa interface do Delphi com o PHP para acessarmos um banco Mysql no site ? (esse acesso consiste de incluir, alterar, etc...
Grato


Responder Citar

27/09/2004

Rômulo Barros

:arrow: [b:32a5b8da77][color=red:32a5b8da77]Bloqueado pelo moderador ´Undeclared Identier´[/color:32a5b8da77][/b:32a5b8da77]
:idea: [b:32a5b8da77][color=red:32a5b8da77]Duplicidade de tópicos[/color:32a5b8da77][/b:32a5b8da77]

Brincadeirinha... ahuaahauahauahauahu
Já respondi algo a respeito, Veja: http://delphiforum.icft.com.br/forum/viewtopic.php?t=47428&sid=dae0450ef035ffc12a272c485832a0e0


Responder Citar

27/09/2004

Fabio Ferreira

Ola
Undeclared Identifier

Nao tem nada de duplicidade e nem vi no topico que voce colocou algo relacionado com a minha pergunta.
Voce entendeu minha pergunta ?


Responder Citar

28/09/2004

Weber

Fabio, na verdade os provedores não liberar o acesso somente via PHP, o que eles querem dizer quando falam isso é que só liberam o acesso via site, nessa caso pode ser php ou outra linguagem qualquer mas nunca de fora do site.
Sendo assim, mesmo que você faça uma rotina em php não vai conseguir acessar o banco de dados sem que a rotina não esteja no site.

Para resolver esse problema você tem que entrar em contato com o provedor e pedir a liberação para poder acessar de fora do site. A grande maioria deles não gosta de fazer esse tipo de liberação e muitos nem mesmo liberam.
O mais coerente a fazer é trocar de provedor mesmo.


Responder Citar

28/09/2004

Maicongabriel

[quote:c153a25973=´Fabio Ferreira´]Foi o que achamos tambem, inicialmente. Atualmente utilizamos a Digiweb. Porem pesquisando outros, do mesmo nivel de qualidade tambem esbarramos na mesma limitacao. Agora independente da nossa providencia a duvida continua existindo. É possivel fazer essa interface do Delphi com o PHP para acessarmos um banco Mysql no site ? (esse acesso consiste de incluir, alterar, etc...
Grato[/quote:c153a25973] Teoricamente não, visto que com PHP o acesso aos dados se daria ´pelo lado do servidor´, que processaria a pagina e executaria os devidos ´comandos´ de acesso, inclusão, alteração, etc. :roll:
Já com Delphi, você estaria do ´lado de fora da rede do servidor´, não atuando internamente; E ai creio eu que esteja um dos motivos do não oferecimento do acesso externo, bem com o motivo da segurança é claro! :wink:
Ao que parece, o ´Undeclared ...´, lhe deu a dica de fazer isto via parametros em um PHP, ou seja, você teria um script php que receberia os paramentros indicativos de (inclusão, exclusão, alteração) e tambem os parametros de dados a serem manipulados;
E a partir disto, tomaria as devidas ações e executaria-as sobre a base(do lado do servidor, uma vez que se daria pelos scripts, que lá são processados).
Funciona? Sim! mas não é muito funcional para um sistema e você esbarraria em varias limitações. :wink:


Responder Citar

28/09/2004

Rômulo Barros

Utilize o componente IDHTTP que está na paleta de componentes ´Indy Clients´. Vc poderá deixar um ´Scrip Php´ montado esperando apenas um parâmetro. Exemplo:

<?php
   $Conexao      = mysql_connect("localhost","root","root") ;
   $Database     = mysql_select_db("exemplo") ;
   $Consulta     = "SELECT * FROM PRODUTOS WHERE CODIGO_PROD = ´$Codigo´";
   $Buffer       = mysql_query($Consulta,$Conexao);
   $RecordCount  = mysql_num_rows($Buffer);
   $Linhas       = mysql_fetch_array($Buffer);
   If($RecordCount > 0){
      echo "Sucesso";
   }
   Else {
      echo "Registro não encontrado";
   }
?>

Para passar o parâmetro do Delphi para o site, faça:

...
Var
  Conteudo : String;
Conteudo := iDHTTP.Get(´http://www.site.com.br/pasta/Script.php?
CODIGO_PROD=1´);
If(Conteudo = ´sucesso´)Then
  showmessage(´Sucesso´);
Else
  If Conteudo = ´Registro não encontrado´)Then
  showmessage(´Não encontrado´);



Responder Citar

28/09/2004

Fabio Ferreira

Muito obrigado a todos pelas respostas. Pelo que entendi, estou procurando outro provedor. Somente a titulo de curiosidade e informacao, atualmente utilizamos como servidor para a base de dados que ja utilizamos o www.freesql.org, que tem suas instabilidades, como ficar fora do ar 4 dias, etc. Por ser free.....
Um abraco a todos.


Responder Citar

28/09/2004

Rômulo Barros

Será q resolve agora?
Segue:
http://www.miarroba.com


Responder Citar

30/09/2004

Zoom

[quote:0159fadb37=´Fabio Ferreira´]Ola
Undeclared Identifier

Nao tem nada de duplicidade [/quote:0159fadb37]

Mesmo se tivesse duplicidade... ele não é moderador também. Pode até se achar assim, mas não é.


Responder Citar