E aí Rafael tudo bem?
mano observando seu código acho que o erro não está na exibição da mensagem de erro para o usuário, o erro está no return
da função insereProduto
no inicio do código você declarou as variáveis incluindo a variável $conexao = mysqli_connect('localhost', 'root', '', 'loja');
que é fundamental para o funcionamento do código mas dentro da função vc usa o return
para retornar o msm valor da variável $conexao
e o correto seria retornar o valor da variável $resultadoDaInsercao
então sua função deve ficar assim:
function insereProduto($conexao, $nome, $preco){
$query = "insert into produtos(nome, preco) values ('{$nome}', {$preco})";
$resultadoDaInsercao = mysqli_query($conexao, $query);
return $resultadoDaInsercao;
}
ou dessa outra forma:
function insereProduto($conexao, $nome, $preco){
$query = "insert into produtos(nome, preco) values ('{$nome}', {$preco})";
return mysqli_query($conexao, $query);
}
experimenta aí espero ter ajudado!