Jump to content


Photo

[php] Problema Com Atulização De Dados Em Db!


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

#1 ODalZin.org

ODalZin.org

    Novato no fórum

  • Usuários
  • 12 posts
  • Sexo:Não informado
  • Localidade:Goiânia - GO

Posted 08/03/2009, 15:32

Pessoal, é o seguinte.
Estou desenvolvendo um sistema, e eu travei numa parte que parece ser BESTA hehe. Fiz coisas bem mais complexas, mas essa ta me matando.

Tem uma pagina do meu sistema que o administrador pode editar os dados dos membros existentes.
O código PHP é esse:

[codebox]<?php

include("configs.php");
$conn = mysql_connect($host, $user, $pass);
mysql_select_db($database);

if (!$id)
{

echo "<br><h2>Selecione um Cliente para editar!</h2>";

}else{

if (!$newsenha)
{

$sql = "UPDATE clientes SET login = '".$newlogin."', email = '".$newemail."', nome = '".$newnome."', nascimento = '".$newnascimento."', sexo = '".$newsexo."', naturalidade = '".$newnaturalidade."', nacionalidade = '".$newnacionalidade."', estadocivil = '".$newestadocivil."', cpf = '".$newcpf."', rg = '".$newrg."', orgao = '".$neworgao."', emissao = '".$newemissao."', ctps = '".$newctps."', profissao = '".$newprofissao."', endereco = '".$newendereco."', numero = '".$newnumero."', complemento = '".$newcomplemento."', bairro = '".$newbairro."', cidade = '".$newcidade."', uf = '".$newuf."', cep = '".$newcep."', telefone = '".$newtelefone."', celular = '".$newcelular."' where id='".$id."'";
mysql_query($sql);
echo "<br><h2>Cliente editado com Sucesso!</h2>";

}else{
$senha = md5($newsenha);
$sql = "UPDATE clientes SET login = '".$newlogin."', senha = '".$senha."', email = '".$newemail."', nome = '".$newnome."', nascimento = '".$newnascimento."', sexo = '".$newsexo."', naturalidade = '".$newnaturalidade."', nacionalidade = '".$newnacionalidade."', estadocivil = '".$newestadocivil."', cpf = '".$newcpf."', rg = '".$newrg."', orgao = '".$neworgao."', emissao = '".$newemissao."', ctps = '".$newctps."', profissao = '".$newprofissao."', endereco = '".$newendereco."', numero = '".$newnumero."', complemento = '".$newcomplemento."', bairro = '".$newbairro."', cidade = '".$newcidade."', uf = '".$newuf."', cep = '".$newcep."', telefone = '".$newtelefone."', celular = '".$newcelular."' where id='".$id."'";
echo "<br><h2>Cliente editado com Sucesso!</h2>";
}
}
mysql_close($conn);
?>[/codebox]


Eu vou explicar o porque do código.

Esta pagina recebe por %_POST os dados editados do usuario.
Então eu coloquei uma condição, quando quando a senha não tem valor agredado (foi deixada em branco para não ser alterada), para ele executar a atualização mas sem mecher na senha.
E caso a senha tenha algum valor agregado (caso o admin tenha digitado alguma coisa no campo senha) o script executa outro código trocando a senha.


O problema é o seguinte. Quando eu deixo a senha em branco, eu consigo alterar qualquer outro campo normalmente do usuario.
Só que se eu coloco alguma coisa na senha, alem de ela não ser alterada, nada é alterado.


Vocês poderiam me ajudar a encontrar o problema?


Obrigado galera!!

#2 '' sem.Ponto

'' sem.Ponto

    Super Veterano

  • Ex-Admins
  • 2098 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte

Posted 08/03/2009, 23:29

Simples questão... ^_^

Você esqueceu de executar a segunda query. ;)

mysql_query($sql);

att,
Muller Dias
ex-administrador Fórum WMO

#3 ODalZin.org

ODalZin.org

    Novato no fórum

  • Usuários
  • 12 posts
  • Sexo:Não informado
  • Localidade:Goiânia - GO

Posted 09/03/2009, 13:23

Caraca meu, sou muito tapado hehe.
Como não vi isso.

Bem que eu disse que era uma coisa simples hehe.

Valeu!




0 user(s) are reading this topic

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

IPB Skin By Virteq