sasleal 0 Denunciar post Postado Setembro 20, 2007 Estou utilizando o mysql 5 e o php5.Quando faço o update ele não atualiza os dados.Testei a sintaxe direto no SQL Manager for MySQL porém ele só atualiza após fechar o programa.Segue abaixo a sintaxe $sql = mysql_query("UPDATE $tb4 SET nome_categoria='$nome_categoria' WHERE nome_categoria='$formcategoria' LIMIT 1;"); Desde já agradeço e aguardo respostas Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Setembro 20, 2007 $sql = mysql_query("UPDATE $tb4 SET nome_categoria='$nome_categoria' WHERE nome_categoria='$formcategoria'"); Tenta sem o LIMIT 1. Compartilhar este post Link para o post Compartilhar em outros sites
sasleal 0 Denunciar post Postado Setembro 20, 2007 The Cod,Tentei sem o Limit 1 porém ele continua sem atualizar. Compartilhar este post Link para o post Compartilhar em outros sites
dinaerteneto 0 Denunciar post Postado Setembro 20, 2007 além do que o the cod disse,você está fazendo o update antes ou depois de efetuar o select.depois de fazer o update, faça um novo select.outra coisa, sua tabela realmente tem o nome de $tb4 com o $?Abraço Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Setembro 20, 2007 Se sua tabela for realmente "$tb4" verifique se a mesma está com o valor do nome da tabela. Compartilhar este post Link para o post Compartilhar em outros sites
sasleal 0 Denunciar post Postado Setembro 20, 2007 The Cod O nome da tabela estar certo $tb4="categoria"; E dinaerteneto Tem um select depois do update Segue abaixo o codigo na integra. //Alteração da Categoria no bdif ($acao==editar){global $nome_categoria;$sql = mysql_query("SELECT * FROM $tb4 WHERE nome_categoria='$nome_categoria'");if (!$sql){echo "Não foi possivel a conexao";}else{echo "<table>";while ($reg = mysql_fetch_array($sql)){$userdbcategoria = $reg['nome_categoria'];echo "<font face=verdana size=1><form name=F1 action=categoria_cad.php?acao=salvarreg method=POST><tr><td><font face=verdana size=1><strong>Categoria:</strong></td><td><input type=text name=\"categoria\" class=form value=\"$userdbcategoria\"></td><td><input type=submit value=\"Atualizar >>\" class=botao></td> </tr> </table></form>";}}}$acao = $_GET['acao'];$formcategoria = $_POST['categoria'];if ($acao==salvarreg){$sql = mysql_query("UPDATE $tb4 SET nome_categoria='$nome_categoria' WHERE nome_categoria='$formcategoria'");if (!$sql){echo "<script>alert(\"Erro, Não foi possivel atualizar seus dados\")</script>";}else{echo "<script>alert(\"Dados Atualizados com Sucesso!\")</script>";echo "<meta http-equiv='refresh' content='0;URL=categoria.php?op=editar'>";}} Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Setembro 20, 2007 Testa ai novmente, se não der certo post de novo que farei outro modo. <?php//Alteração da Categoria no bdif ($acao==editar){global $nome_categoria;$sql = mysql_query("SELECT * FROM $tb4 WHERE nome_categoria='$nome_categoria'");}if (!$sql){echo "Não foi possivel a conexao";}else{echo "<table>";while ($reg = mysql_fetch_assoc($sql)){$userdbcategoria = $reg['nome_categoria'];echo "<font face=verdana size=1><form name='F1' action='categoria_cad.php?acao=salvarreg' method='POST'><tr><td><font face=verdana size=1><strong>Categoria:</strong></td><td><input type='text' name='categoria' class=form value='$userdbcategoria'></td><td><input type='submit' value='Atualizar >>' class='botao'></td> </tr> </table></form>";}}$acao = $_GET['acao'];$formcategoria = $_POST['categoria'];if ($acao==salvarreg){$sql = mysql_query("UPDATE $tb4 SET nome_categoria='$nome_categoria' WHERE nome_categoria='$formcategoria'");}if (!$sql){echo "<script>alert(\"Erro, Não foi possivel atualizar seus dados\")</script>";}else{echo "<script>alert(\"Dados Atualizados com Sucesso!\")</script>";echo "<meta http-equiv='refresh' content='0;URL=categoria.php?op=editar'>";}?> Compartilhar este post Link para o post Compartilhar em outros sites
sasleal 0 Denunciar post Postado Setembro 21, 2007 The CodDa forma como voce fez ele não permite que eu insira o dados... Compartilhar este post Link para o post Compartilhar em outros sites
Wagner Bianchi 0 Denunciar post Postado Setembro 21, 2007 Opa, Vamos resolver isso carinhas!! ehehe O problema: PHP $sql = mysql_query("UPDATE $tb4 SET nome_categoria='$nome_categoria' WHERE nome_categoria='$formcategoria' LIMIT 1;"); Vamos separar um pouco as coisas para nos faciliatar visualizar na tela como está o seu UPDATE e acrescentar outras coisinhas que nos dará certamente qual é o problema do seu comando SQL. Coloque seu código dessa forma: PHP echo $sql = "UPDATE $tb4 SET nome_categoria='$nome_categoria' WHERE nome_categoria='$formcategoria' LIMIT 1" . "<br><br>";$con = mysql_query($sql) or die (mysql_error()); O seu comando SQL não vai funcionar dessa forma por causa do "<br><br>", é de propósito para separarmos a query do erro retornado pelo mysql, mas assim, quero que você copie o erro e a query da tela e poste aqui no fórum, por favor...daí então, analisando "o erro e a query", poderemos rapidamente te ajudar. Faz isso pra'gente? Abração meu camarada!! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
sasleal 0 Denunciar post Postado Setembro 21, 2007 Wagner,O erro que ocorreu foi o seguinte:UPDATE categoria SET nome_categoria='' WHERE nome_categoria='categoria05' LIMIT 1You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 Compartilhar este post Link para o post Compartilhar em outros sites
Wagner Bianchi 0 Denunciar post Postado Setembro 21, 2007 Huuummmm, muito bem camarada!! O erro está na query mesmo!! Percebeu? Você está usando o próprio nome da categoria para substituí-la e esta não está chegando na cláusula UPDATE por algum motivo. Com certeza o campo deve ter restrições NOT NULL, então o UPDATE falha. A sua tabela categoria, como é essa tabela? Quais campos ela tem? Dependendo, se você tiver um campo identificador, por exemplo um campo auto_increment, você pode usar este para atualizar o registro. Vai no mysql, dentro do banco que alimenta sua aplicação e emita o seguinte comando: DESC categoria; Cola o resultado aqui...vai lá!! Abração!! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
sasleal 0 Denunciar post Postado Setembro 21, 2007 Segue os dados da tabela categoriaField Type Null Key Default Extracod_categoria int(4) NO PRI auto_incrementnome_categoria varchar(20) NO "" "" "" Compartilhar este post Link para o post Compartilhar em outros sites
Kandrade 7 Denunciar post Postado Setembro 21, 2007 Além disso que o Wagner disse. Parece que há um erro na construção da string. UPDATE categoria SET nome_categoria=[color="#FF0000"]"[/color] WHERE nome_categoria='categoria05' LIMIT 1 Se isso estiver mesmo errado essa aspas deve vir da variável $tb4. Compartilhar este post Link para o post Compartilhar em outros sites
Wagner Bianchi 0 Denunciar post Postado Setembro 21, 2007 Seguinte. . .o seu problema não é mais com o UPDATE, mas sim com lógica e com linguagem PHP. Vamos mover este tópico para a área da lingagem e lá a galera poderá lhe ajudar melhor, ok? O UPDATE tá certinho, somente indoco que você use o chave do registro... UPDATE tabela SET campo ='valor' WHERE campo_chave =id; Abração camarada!! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
sasleal 0 Denunciar post Postado Setembro 21, 2007 pessoal do php alguem poderia da um help. Compartilhar este post Link para o post Compartilhar em outros sites