Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
2
respostas

Dúvida ao inserir a $query com aspas simples e sem aspas.

Boa tarde galera,

Quando eu insiro a $query, com aspas simples:

        $query = "insert into produtos (nome, preco) values('{$nome}', '{$preco}' )";

O código insere qualquer valor no banco, mesmo que com os campos em branco.

Ao inserir a $query, sem aspas simples:

        $query = "insert into produtos (nome, preco) values({$nome}, {$preco})";

Ele retorna o erro esperado ao inserir com os campos em branco, porém ele não insere com os dados corretos. Retorna esse erro:

O produto lapis não foi adicionado. Unknown column 'lapis' in 'field list'

Por que será está ocorrendo esse "bug" ??

2 respostas
solução!

todo campo texto, é necessário estar entre aspas simples, já os campos numéricos não.

a validação de estar branco ou não deve ser realizada antes da execução da query.

        $nome = trim($nome);
       if ( $nome === '') die('Nome não informado');
        $query = "insert into produtos (nome, preco) values('{$nome}', {$preco} )";

esta sintaxe demonstra o que citei anteriormente.

Obrigado Paulo !!

Abraços