Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Gabriel SS

Carrega dados de outro DB e salva em DB local

Mensagens Recomendadas

Gabriel SS

Boas,

estou desenvolvendo um sistema que, após do input de 2 dados(eg: nome), seria consultado um banco de dados A e retornaria uma outra página com mais dados (telemóvel, residência, email..). Enfim, o user confirmaria se os dados estão corretos e então iriam gravar os mesmos dados em um banco de dados B.

Porém, não consigo botar tal ideia em código  B)

Posso estar errado, mas creio que deve ser feito um SELECT no banco A..mas como procedo depois para com o inserção de dados em B?

Conto com a ajuda de vocês!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Gabriel SS

Então eu teria que criar uma variável para cada dado que eu queira puxar, certo?

Mas como eu puxo dados não declarados na página, ou seja, sem a parte do "WHERE" ?

O fator de seleção primário seria o nome, depois iria puxar todos os dados referente aquele nome, compreende?

Obrigado

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Gabriel SS

Não, estão todos os dados em A.

O user dá input do nome, e o sistema busca os outros dados, e exibe na tela.

Se tiver tudo certo, ai sim ele "transfere" o registro.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
yoda


# supondo que recebes o nome por POST
$nome = $_POST['nome'];

$query = 'SELECT * FROM nome_da_tabela WHERE nome="'.$nome.'" LIMIT 1';
$result = mysql_query($query) or die(mysql_error());

# verifica se existe algum nome na base de dados
if (mysql_num_rows($result) > 0)
{
  # existem registos
  while($row = mysql_fetch_assoc($result)){
# aqui existem temporariamente os registos encontrados em $row, sejam eles quais forem, por chaves associativas
        echo $row['nome'];
   }
}
else
{
  # não existem registos
  echo 'nao existe';
}

edit : correcção

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Gabriel SS

Sim, desde já agradeço pela ajuda...

E, por exemplo, o banco de dados estivessem distantes um ao outro fisicamente, que é o meu caso (eg: A estivesse na Coréia do Sul e B em Portugal)? Eu teria que primeiramente me conectar com o DB A, fazer uma leitura e verificar, correcto?

Porém, como irei "abortar" o mysql_connect de A para poder fazer um mysql_connect com o B? (a partir do trecho

 # existem registos
while($row = mysql_fetch_assoc($result)){
.
.
.

Grato

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
simonoop

Eu não o faria (não o faço, aliás) dessa forma.

Experimenta isto:

1. Na máquina remota (B) mete qualquer coisa à espera de um POST.

2. Se em A tudo correr bem então faz um post para o tal script em B.

Com os habituais cuidados de segurança...

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.