Tatsui 0 Denunciar post Postado Agosto 28, 2012 tenho o seguinte código: $nome = $_POST['nome']; $preco = $_POST['preco']; $img = $_POST['img']; $desc2 = $_POST['desc']; $sql = "UPDATE produtos SET nome = '$nome', preco = '$preco', img = '$img', desc = '$desc2' WHERE id = '$id'"; $query = mysql_query($sql) or die("Erro ".mysql_error()); quando tendo enviar, aparece o seguinte erro: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'desc = 'gfghd' WHERE id = '1'' at line 1 ME ajudem por favor ^^ Obrigado :D Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Agosto 28, 2012 Você está digitando caracteres especiais no campo da imagem ou descrição. Faça um debug para saber em qual campo, e fala funções para escapar caracteres especiais, em sua query não existe erro. print '<pre>'; print_r($_POST); print '</pre>'; $nome = $_POST['nome']; $preco = $_POST['preco']; $img = $_POST['img']; $desc2 = $_POST['desc']; $sql = "UPDATE produtos SET nome = '$nome', preco = '$preco', img = '$img', desc = '$desc2' WHERE id = '$id'"; $query = mysql_query($sql) or die("Erro ".mysql_error()); Compartilhar este post Link para o post Compartilhar em outros sites
shini 318 Denunciar post Postado Agosto 28, 2012 'desc' é uma palavra reservada, mude o nome da coluna se possivel... http://dev.mysql.com/doc/refman/5.0/en/reserved-words.html MySQL permits some keywords to be used as unquoted identifiers because many people previously used them. Examples are those in the following list: ACTION BIT DATE ENUM NO TEXT TIME TIMESTAMP Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Agosto 28, 2012 Bem lembrado. o DESC é para definir a ordem dos dados, porém, não sei se na posição em que ele se encontra irá afetar a query. Compartilhar este post Link para o post Compartilhar em outros sites
Tatsui 0 Denunciar post Postado Agosto 28, 2012 ja resolvi, o problema foi o q o amigo citou ai em cima, num pode usar desc como nome de uma coluna no mysql. eu uso outros banco de dados, e neles não acontece isso, são mais inteligentes kkk. de qualquer forma obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
shini 318 Denunciar post Postado Agosto 28, 2012 gera erro de sintaxe. tenta excutar essa consulta select desc from <tabela> se não for possivel alterar o nome da coluna, adicione aspas em desc select 'desc' from <tabela> ou select `desc` from automoveis Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Agosto 28, 2012 É verdade, passei batido... :graduated: Compartilhar este post Link para o post Compartilhar em outros sites