Bobrinha 4 Denunciar post Postado Abril 11, 2012 Olá, estou com um problema muito chato aqui que nunca tinha me acontecido fiz umas pesquisas na web mais não achei solução não consigo fazer um simples insert que me deparo com 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,help,cat,flash,imagem) VALUES ('nome','descrição','ajuda','10','123','456')' at line 1 insert.php <?php include "../conexao.php"; $nome = ($_POST["nome"]); $desc = ($_POST["desc"]); $help = ($_POST["help"]); $cat = ($_POST["categoria"]); $nome_final='123'; $nome_final2='456'; $sql = mysql_query ("INSERT INTO teste (nome,desc,help,cat,flash,imagem) VALUES ('$nome','$desc','$help','$cat','$nome_final','$nome_final2')") or die (mysql_error()); ?> SQL CREATE TABLE `teste` ( `id` int(11) NOT NULL auto_increment, `nome` text NOT NULL, `desc` text NOT NULL, `help` text NOT NULL, `cat` int(11) NOT NULL, `flash` text NOT NULL, `imagem` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=11 ; Compartilhar este post Link para o post Compartilhar em outros sites
rfps888 7 Denunciar post Postado Abril 11, 2012 Experimenta colocar: $sql = mysql_query ("INSERT INTO teste (id,nome,desc,help,cat,flash,imagem) VALUES (null,'$nome','$desc','$help','$cat','$nome_final','$nome_final2')") or die (mysql_error()); Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Abril 11, 2012 você criou uma coluna chamada desc, desc eh uma palavra reservada do sql e nao deve ser usada, ae esta seu erro... Compartilhar este post Link para o post Compartilhar em outros sites
Bobrinha 4 Denunciar post Postado Abril 11, 2012 Experimenta colocar: $sql = mysql_query ("INSERT INTO teste (id,nome,desc,help,cat,flash,imagem) VALUES (null,'$nome','$desc','$help','$cat','$nome_final','$nome_final2')") or die (mysql_error()); Obg amigo mais não funciona assim também e me retorna 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,help,cat,flash,imagem) VALUES (null,'','','','1','123','456')' at line 1 você criou uma coluna chamada desc, desc eh uma palavra reservada do sql e nao deve ser usada, ae esta seu erro... Igor, se desc é uma palavra reservada algo esta errado eu tenho varios sites e sempre usei esta coluna e nunca tive problemas, inclusive tenho sites online com essa coluna com mais de 3000 resultados Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Abril 11, 2012 Igor, se desc é uma palavra reservada algo esta errado eu tenho varios sites e sempre usei esta coluna e nunca tive problemas, inclusive tenho sites online com essa coluna com mais de 3000 resultados entao printa o sql na tela e veja o resultado, ele vai destacar o desc, ae você tera a certeza q eh palavra reservada, sobre outros sistemas, veja a versao do mysql, a versao pode ter mudado enovas features inseridas...ele nao proibe a criacao da coluna com este nome, apenas 'se enrola' na hora do select, acha q a uma palavra dele, e veja no erro q o erro esta comecando logo nesta palavra... Compartilhar este post Link para o post Compartilhar em outros sites
shini 318 Denunciar post Postado Abril 11, 2012 tente colocar aspas no desc ou coloque o nome por 'extenso' teste.desc $sql = mysql_query ("INSERT INTO teste (nome, ´desc´,help,cat,flash,imagem) VALUES ('$nome','$desc','$help','$cat','$nome_final','$nome_final2')") or die (mysql_error()); Compartilhar este post Link para o post Compartilhar em outros sites
Bobrinha 4 Denunciar post Postado Abril 11, 2012 Shini mesmo alterando o mesmo erro continua, mais obrigado por ajudar Igor seguindo sua logica que é muito estranha inclusive se puder poderia me explicar, eu mudei o nome da coluna de desc para descricao então a query funcionou agora como no meu site www.bobrinha.com eu tenho mais de 2600 jogos onde tem uma tabela chamada games e uma coluna chamada desc e sempre inseri registros normal agora não entendo por que disso? Ha e muito obrigado pela força realmente se você não fala ia ficar dias apanhando aqui tentando de todo jeito e não teria resultados Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Abril 11, 2012 se eu pudese at explicaria, mas como a infromatica eh ciencia exoteria e eu nao sou cigano, nao posso lhe explicar..kkkk mas assim, outro dia tinha um cara aki com o mesmo problema, ae eu peguei o sql dele e joguei no phpmyadmin, q realcou a palavra ae eu saquei, era a palavra desc q estava como reservada, assim como existe palavra reservada no php, no mysql tb existe, e no seu caso pode ser a versao do mysql q nao faz tal validacao... Compartilhar este post Link para o post Compartilhar em outros sites
shini 318 Denunciar post Postado Abril 11, 2012 nem o nome por extenso funcionou? qual é a versão do mysql? Compartilhar este post Link para o post Compartilhar em outros sites
Bobrinha 4 Denunciar post Postado Abril 11, 2012 nem o nome por extenso funcionou? qual é a versão do mysql? De nenhuma forma que você ajudou deu certo e de outras, a única solução foi mudar o nome da coluna como disse o Igor Apache version 2.2.17PHP version 5.2.17 MySQL version 5.0.95-community-log Compartilhar este post Link para o post Compartilhar em outros sites