Zoação 2 Denunciar post Postado Setembro 4, 2013 O que esta errado no código abaixo? Não estou conseguindo atualizar os dados no banco de dados mysql. Sempre que clico no botão atualizar que tem uma chamada para o arquivo "atualiza.php", simplesmente a página fica "vazia". Veja o código abaixo: <?php include ("config.php"); $id = $_POST['id']; $situacaofoto = $_POST['situacaofoto']; $facebook = $_POST['facebook']; $website = $_POST['website']; $informacoes = $_POST['informacoes']; mysql_query("UPDATE fotografias SET situacaofoto='$situacaofoto', facebook='$facebook', website='$website', observacoes='$observacoes' WHERE id = '$id'"); ?> Obrigado desde já! Compartilhar este post Link para o post Compartilhar em outros sites
shini 318 Denunciar post Postado Setembro 4, 2013 vacalhação deixa seu codigo assim e veja se aparece algum erro: ini_set('display_errors', true); error_reporting(E_ALL); $sql = "UPDATE fotografias SET situacaofoto='$situacaofoto', facebook='$facebook', website='$website', observacoes='$observacoes' WHERE id = '$id'"; echo '<pre>'; print_r($sql); mysql_query($sql) or die(mysql_error()); Compartilhar este post Link para o post Compartilhar em outros sites
cassiane 4 Denunciar post Postado Setembro 4, 2013 id deve ser inteiro e vc tá colocando como string "UPDATE fotografias SET situacaofoto='$situacaofoto', facebook='$facebook', website='$website', observacoes='$observacoes' WHERE id = $id"; tenta assim Compartilhar este post Link para o post Compartilhar em outros sites
ESerra 744 Denunciar post Postado Setembro 4, 2013 id deve ser inteiro e vc tá colocando como string Não faz a menor diferença para este caso. Eu apostaria em algum campo que não pode ser null... Compartilhar este post Link para o post Compartilhar em outros sites
Cristianoferr 32 Denunciar post Postado Setembro 4, 2013 Bom... se a página fica vazia é porque está sendo atualizado os dados, já que não tem nenhum tipo de resposta caso tudo dê ok. Os dados estão sendo atualizados? dá um echo no $sql e tenta executar no phpmyadmin. Compartilhar este post Link para o post Compartilhar em outros sites
cassiane 4 Denunciar post Postado Setembro 4, 2013 é sim porque a sua condição é a seguinte só dá update se existir algum registro que tenha aquele id se vc declarou ele como inteiro no bd e bota no codigo como string ele nunca vai executar o update entendeu ? Compartilhar este post Link para o post Compartilhar em outros sites
Cristianoferr 32 Denunciar post Postado Setembro 4, 2013 Nesse caso não faz diferença, o mysql entende que '$id' é inteiro caso o tipo de dado seja inteiro (ou seja, '1' é igual a 1). Daria erro se $id fosse "null", já que 'null' é diferente de null. Mas não deve ser o caso aqui. Compartilhar este post Link para o post Compartilhar em outros sites
ESerra 744 Denunciar post Postado Setembro 4, 2013 é sim porque a sua condição é a seguinte só dá update se existir algum registro que tenha aquele id se vc declarou ele como inteiro no bd e bota no codigo como string ele nunca vai executar o update entendeu ? Perfeitamente errada a sua lógica... faça um teste você mesma. Compartilhar este post Link para o post Compartilhar em outros sites
cassiane 4 Denunciar post Postado Setembro 4, 2013 mysql_query("UPDATE fotografias SET situacaofoto='$situacaofoto', facebook='$facebook', website='$website', observacoes='$observacoes' WHERE id = '$id'"); olha a variavel $observacoes não seria $informacoes ? Compartilhar este post Link para o post Compartilhar em outros sites
Zoação 2 Denunciar post Postado Setembro 4, 2013 id deve ser inteiro e vc tá colocando como string "UPDATE fotografias SET situacaofoto='$situacaofoto', facebook='$facebook', website='$website', observacoes='$observacoes' WHERE id = $id"; tenta assim Não funcionou não cassiane. Bom... se a página fica vazia é porque está sendo atualizado os dados, já que não tem nenhum tipo de resposta caso tudo dê ok. Os dados estão sendo atualizados? dá um echo no $sql e tenta executar no phpmyadmin. Não esta sendo atualizando. Quando vou logo após até o banco de ados através do phpmyadmin, vejo que os campos continuam inauterados. Compartilhar este post Link para o post Compartilhar em outros sites
shini 318 Denunciar post Postado Setembro 4, 2013 alguma mensagem de erro? executou a consulta ($sql) direto no banco? Compartilhar este post Link para o post Compartilhar em outros sites
cassiane 4 Denunciar post Postado Setembro 4, 2013 faz assim que vai dar certo mysql_query("UPDATE fotografias SET situacaofoto='$situacaofoto', facebook='$facebook', website='$website', observacoes='$informacoes' WHERE id = '$id'"); Compartilhar este post Link para o post Compartilhar em outros sites
Zoação 2 Denunciar post Postado Setembro 4, 2013 mysql_query("UPDATE fotografias SET situacaofoto='$situacaofoto', facebook='$facebook', website='$website', observacoes='$observacoes' WHERE id = '$id'"); olha a variavel $observacoes não seria $informacoes ? Coloquei uma chamada para que possa então ser redirecionada a página caso o script seja executado, porém redireciona, mas não atualiza nada... <?php include ("config.php"); $id = $_POST['id']; $situacaofoto = $_POST['situacaofoto']; $facebook = $_POST['facebook']; $website = $_POST['website']; $observacoes = $_POST['observacoes']; mysql_query("UPDATE fotografias SET situacaofoto='$situacaofoto', facebook='$facebook', website='$website', observacoes='$observacoes' WHERE id = '$id'"); header("Location:localizar.php"); ?> id está assim, veja: Type: int(11) Collation: (vazio) Attributes: (vazio) Null: No Default: (vazio) Extra: auto_increment Compartilhar este post Link para o post Compartilhar em outros sites
cassiane 4 Denunciar post Postado Setembro 4, 2013 vc mudou a variavel ? Compartilhar este post Link para o post Compartilhar em outros sites
Zoação 2 Denunciar post Postado Setembro 4, 2013 vc mudou a variavel ? Na verdade eu corrigi... é "observacoes" e não "informacoes". Compartilhar este post Link para o post Compartilhar em outros sites
Cristianoferr 32 Denunciar post Postado Setembro 4, 2013 Uma coisa boba... o id que você quer alterar existe? Outra... tira as aspas do id... lembrei agora que caso o id esteja vazio e usar aspas não vai dar erro (já que a sintaxe <campo>='' é correta). Faz isso e cole aqui a saída: $sql="UPDATE fotografias SET situacaofoto='$situacaofoto', facebook='$facebook', website='$website', observacoes='$observacoes' WHERE id = '$id'"; print_r($sql); mysql_query($sql); Compartilhar este post Link para o post Compartilhar em outros sites
Zoação 2 Denunciar post Postado Setembro 4, 2013 Uma coisa boba... o id que você quer alterar existe? Outra... tira as aspas do id... lembrei agora que caso o id esteja vazio e usar aspas não vai dar erro (já que a sintaxe <campo>='' é correta). Faz isso e cole aqui a saída: $sql="UPDATE fotografias SET situacaofoto='$situacaofoto', facebook='$facebook', website='$website', observacoes='$observacoes' WHERE id = '$id'"; print_r($sql); mysql_query($sql); Estranho, não exibiu nada... Compartilhar este post Link para o post Compartilhar em outros sites
Rogério Santana 172 Denunciar post Postado Setembro 4, 2013 http://forum.imasters.com.br/topic/507669-atualizar-dados-aps-resultado-de-consulta/ Você abre um novo post, porque quer tudo pronto. Aí quando não te respondem do jeito que você quer, você faz isso. Abre um monte de post sempre com as mesmas coisas. Sempre com as mesmas questões muitas das vezes já resolvidas. Tudo que você quer, você não se dá o trabalho de pesquisar no Google, quer pronto. O fórum é de ajuda, compartilhamento de conhecimento, troca de experiências. Não para fazer dever de casa. Antes que você diga que nunca fez isso ta aí http://forum.imasters.com.br/topic/506655-atualizar-registro-em-banco-de-dados-mysql/ (o comando é o mesmo) :lock: Compartilhar este post Link para o post Compartilhar em outros sites