Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Amigos, o código é esse:
$sq = "INSERT INTO pgto (id, codi, stot, desc, tota, data)values('', '$codi', '$stot', '$desc', '$tota',
'$data')";
$re = mysql_query($sq,$conec) or die (mysql_error());
E o erro é esse:
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, tota, data)values('', 'i001', '27540.00', '826.2', '26713.8',
'2014-10-21'' at line 1
Não estou conseguindo encontrar o erro. Agradeço sua ajuda.
Valeu, Fernando, muito obrigado.
A outra coluna chama tota mesmo !?
O bom é que a coluna identifique positivamente o conteúdo
Codigo
Descricao
Valor_da_venda
Data_de_admissao
Pienkovski,
Além das dicas do pessoal acima para resolver seu erro de sintaxe na query , aconselho que você se dedique a segurança também pois ao utilizar parâmetros como '' '$codi', '$stot', '$desc', '$tota' " de forma direta você pode ser vítmia de ataques de SQL Injection. E também pense na possibilidade de caso você troque o BD para por exemplo Postgre , você teria que alterar todos os códigos Mysql da sua aplicação para Postgre . A depender da aplicação isso pode ser muito tedioso e trabalhoso.
Sugiro que você dê uma olhada em uma classe do PHP chamada PDO (PHP Data Object ) .Ela é uma biblioteca de abstração de conexões de banco de dados que fornece uma interface comum para conversar com vários bancos de dados diferentes.
Segue os links para você entender melhor como ela funciona:
Uma coisa que vc pode fazer é colocar crases nos campos, assim o MySQL entende como campos, e não palavras reservadas
$sq = "INSERT INTO pgto (id, codi, stot, desc, tota, data)values('', '$codi', '$stot', '$desc', '$tota', '$data')";
'desc' é palavra reservada, tente renomear a coluna
(sim, engraçado, não dá problema criar uma coluna com esse nome.. vai entender..).
dica extra: se id é auto incremento, tire da sql, isso tb pode gerar conflitos..