Nao consigo inserir dados na tabela?

Não consigo inserir dados na minha tabela, e os comandos estão todos certos, conexão tudo certo, mas não insere os dados.

Segue o código:

<?php
	include "conexao.inc";
	
	$vtitulo=$_POST['titulo'];
	$veditora=$_POST['editora'];
	$vcategoria=$_POST['categoria'];
	$vpreco=$_POST['preco'];
	$vqtde=$_POST['qtde'];
	
	$sql = "INSERT INTO 'tb_livros' VALUES ('$vtitulo' , '$veditora' , '$vcategoria' , $vpreco , $vqtde)";
	$res = mysqli_query($con,$sql);
	$linhas = mysqli_affected_rows($con);
	
	echo "$linhas linhas afetadas";
	
	mysqli_close($con);
?>

Esse arquivo recebe dados de um formulário bisaco e também esta tudo certo também

Alguém sabe se tem algum erro nesse código?

Boa noite jovem!
Bom primeiro troque o include por require_once.
Segundo tire as aspas simples das variáveis no values.
Terceiro verifique se o nome do arquivo da conexão está certo, esta faltando o .php
Bom arrume isso e vê se funciona, espero ter ajudado.

O seu INSERT está faltando declarar quais campos você está inserindo:

Exemplo:

Tabela

  • cliente

Campos da tabela cliente

  • id (Auto Incremento)
  • nome
  • status

para inserir nessa tabela a SQL seria:

INSERT INTO `cliente` (`nome`, `status`) VALUES('$nome','$status');

basicamente você não estipulou os campos e foi direto para os Values, isso até funciona, mas, isso pode ocasionar problemas futuros, então utilize da maneira que eu te disse:

"INSERT INTO `tb_livros`(`vtitulo`,`veditora`,`vcategoria`,`vpreco`,`vqtde`)
    VALUES ('$vtitulo' , '$veditora' , '$vcategoria' , $vpreco , $vqtde)"

Seria dessa forma onde os campos são envolvidos em crase e nos campos se forem texto ou data são envolvidos entre aspas simples.

Links com um bons exemplos:

1 curtida