Erro ao inserir dados no MySQL
Não estou conseguindo inserir corretamente os dados que quero num BD. Faz pouco tempo que estudo PHP e MySQL mas até agora todas as outras tentativas que fiz funcionaram numa boa.Só que, quando eu tento inserir os dados na tabela 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 'SET ano = 2006, mes = 'jan', ' at line 3
O código que eu estou usando é esse:<?php $DbCnx = @mysql_connect('localhost', 'root', '') or die( '<p id="erro">Ocorreu um erro ao se conectar com o banco de dados. Chame o Daniel!</p>' ); mysql_select_db('controle', $DbCnx) or die('<p id="erro">Erro ao acessar a tabela solicitada. Chame o Daniel!</p>'); $Ano = $_GET['ano']; $Id = $_GET['id']; $Tipo = $_GET['tipo']; $Result = @mysql_query("SELECT * FROM empresas WHERE id = $Id") or die('<p id="erro"> Erro ao executar pedido: ' . mysql_error() . '</p>'); //-------------------------- // Obtém dados empresariais. //-------------------------- $Row = mysql_fetch_array($Result); //------------------------------------------ // Se o botão "Salvar Controle" foi clicado, // salva os dados no Banco de Dados. //------------------------------------------ if (isset($_POST['salvacontrole'])) { $Mes = 'jan'; $Cons = $_POST['cons-jan']; $Prev = $_POST['prev-jan']; $Total = $_POST['total-jan']; $Pis = $_POST['pis-jan']; $PgPis = $_POST['pg-pis-jan']; $Irpj = $_POST['irpj-jan']; $PgIrpj = $_POST['pg-irpj-jan']; $Irrf = $_POST['irrf-jan']; $RetIrrf = $_POST['ret-irrf-jan']; $Cofins = $_POST['cofins-jan']; $PgCofins = $_POST['pg-cofins-jan']; $Csll = $_POST['csll-jan']; $PgCsll = $_POST['pg-csll-jan']; $Issqn = $_POST['issqn-jan']; $PgIssqn = $_POST['pg-issqn-jan']; $Inss = $_POST['inss-jan']; $PgInss = $_POST['pg-inss-jan']; $TotalImp = $_POST['totalimp-jan']; $Sql = "INSERT INTO $id SET ano = $Ano, mes = '$Mes', cons = $Cons, prev = $Prev, total = $Total, pis = $Pis, pgpis = '$PgPis', irpj = $Irpj, pgirpj = '$PgÍrpj', irrf = $Irrf, retirrf = '$RetIrrf', cofins = $Cofins, pgcofins = '$PgCofins', csll = $Csll, pgcsll = '$PgCsll', issqn = $Issqn, pgissqn = '$PgIssqn', inss = $Inss, pginss = '$PgInss', totalimp = $TotalImp"; if (@mysql_query($Sql)) { echo('<p> Controle Salvo com sucesso. </p>'); } else { echo('<p id="erro"> O seguinte erro foi encontrado: ' . mysql_error() . '</p>'); } }Não sei se essa é a maneira certa de se inserir dados mas vocês podem notar que em algumas variaveis eu acrescento apóstrofo e em outras não. Faço isso pq aquelas sem apóstrofo são do tipo float e aquelas com o apóstrofo, são do tipo varchar.Alguma idéia do que pode estar errado?Discussão (12)
Carregando comentários...