Jump to content


Photo

Cadastrar Dados Alterados Em Outra Tabela


  • Faça o login para participar
8 replies to this topic

#1 Célio-Ctba

Célio-Ctba

    12 Horas

  • Usuários
  • 293 posts
  • Sexo:Masculino
  • Localidade:Curitiba - PR

Posted 09/03/2006, 09:56

Tenho uma tabela com pessoas cadastradas e seus dados, quero fazer na alteração o seguinte fluxo:

Ao clicar em alterar, será exibido o formulário preenchido com os dados que estão no banco, vou criar uma nova tabela, onde quero cadastrar o código da pessoa em questão e . . . apenas os dados q foram alterados e os dados como eram antes da alteração com a data desta alteração.

Na opinião de vc´s qual a melhor forma, direto no SQL ou com array ou . . . ?
- Jesus -

#2 fly2k

fly2k

    Super Veterano

  • Usuários
  • 2262 posts
  • Sexo:Não informado

Posted 09/03/2006, 14:38

vai ter que ser sql neh...num enxergo outra forma
Quer aprender PHP? -> www.manjaphp.com.br
Tutoriais, código colaborativo (pastebin), curso de PHP, artigos e etc.

#3 Célio-Ctba

Célio-Ctba

    12 Horas

  • Usuários
  • 293 posts
  • Sexo:Masculino
  • Localidade:Curitiba - PR

Posted 09/03/2006, 17:49

vai ter que ser sql neh...num enxergo outra forma

Não sei se a idéia é essa, o q pensei foi assim:

Qdo monto o array para exibir os dados para alteração, eu conto os caracteres dos campos com strlen. Aí a hr q o form for submetido eu faço a comparação
$vlr_veio = strlen($array[nome]);
$vlr_novo = strlen($_POST[nome]);
     if($vlr_veio != $vlr_novo){
          Não cadastra nada em nenhuma tabela
    }
    else{
          $sql = mysql_query("insert into tabela  . . .");
    }

Só q e se o nome q esta na tabela atualmente for P E D R O(5 caracteres) e o usuario mudar para C H I C O(5 caracteres tb) o script não vai cadastrar pois os dois tem o mesmo tamanho.
Alguém tem uma lógica mais inteligente?
- Jesus -

#4 rafael.hr

rafael.hr

    Eterno Aprendiz...

  • Usuários
  • 140 posts
  • Sexo:Não informado

Posted 09/03/2006, 21:09

seu problema no final é de lógica e não de php.

Bom, se eu tivesse que ter um controle desse tipo, eu iria mostrar os dados para alteração via um formulário e gravar os mesmo dados no session do usuário. Usaria também uma função em javascript para apenas habilitar o botão de "alterar" quando algum dos valores fosse mudado. Sendo assim, finalmente iria atualizar o registro na tabela original e gravar todos os dados contidos na session(os dados antigos) na tabela "backup".

Espero ter ajudado um pouco.

#5 paes

paes

    GustavoPaes.Net

  • Usuários
  • 1393 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP
  • Interesses:Rumo ao topo!

Posted 09/03/2006, 21:42

Hum... nem precisa guardar numa função
Basta ao enviar o form, antes de cadastrar no banco, fazer uma consulta e verificar se é igual ou não!

Dai ja sabe, se for igual, faz nada, senão coloca a data.

Saco?
Site: GustavoPaes.net

^ Rumo ao Topo ^

#6 Célio-Ctba

Célio-Ctba

    12 Horas

  • Usuários
  • 293 posts
  • Sexo:Masculino
  • Localidade:Curitiba - PR

Posted 10/03/2006, 09:33

Hum... nem precisa guardar numa função
Basta ao enviar o form, antes de cadastrar no banco, fazer uma consulta e verificar se é igual ou não!

Dai ja sabe, se for igual, faz nada, senão coloca a data.

Saco?

Sim, a idéia é exatamente essa Paes, mas a DÚVIDA é como fazer esta comparação, pois com strlen como fiz acima, não dá. Como comparar os dados?
E o local ali onde fiz a comparação está correto?
- Jesus -

#7 aragao

aragao

    Normal

  • Usuários
  • 64 posts
  • Sexo:Não informado

Posted 10/03/2006, 16:09

:D Ei cara

Não compare o tamanho mas os próprios dados!

acho que dá certo.....
Heber Aragão:
Programador PHP, JSP.
Conhecimentos: Ajax, XHTML, CSS, Javascript

#8 Célio-Ctba

Célio-Ctba

    12 Horas

  • Usuários
  • 293 posts
  • Sexo:Masculino
  • Localidade:Curitiba - PR

Posted 10/03/2006, 16:24

Mas qual a função ou método q faz isso??????
- Jesus -

#9 aragao

aragao

    Normal

  • Usuários
  • 64 posts
  • Sexo:Não informado

Posted 10/03/2006, 16:32

Mas qual a função ou método q faz isso??????

Nunhuma ....

é só fazer :

if($variavel1 == $variavel2)

se os dados tiverem o mesmo "tipo" acho que funciona....
Heber Aragão:
Programador PHP, JSP.
Conhecimentos: Ajax, XHTML, CSS, Javascript




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq