Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Erro na mensagem do erro

Pessoal, fui fazer o teste da mensagem de erro , mas não deu certo.

 Notice: Undefined variable: insereProduto in C:\wamp64\www\loja\adiciona-produto.php on line 19

 Fatal error: Function name must be a string in C:\wamp64\www\loja\adiciona-produto.php on line 19

meu código:

<?php include("cabecalho.php"); ?>

<?php
function insereProduto($conexao, $nome, $preco) {
    $query = "insert into produtos (nome, preco) values ({'$nome'}, {'$preco'})";
    $resultadoDaInsercao = mysqli_query($conexao, $query);
    return $resultadoDaInsercao;
}

$nome = $_GET["nome"];
$preco = $_GET["preco"];

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

$conexao = mysqli_connect('localhost', 'root', '', 'loja');
?>
<?php

if($insereProduto($conexao, $nome, $preco)) {
?>
    <p class="text-success">Produto    <?= $nome; ?>, <?=$preco; ?> adicionado com sucesso!</p>
<?php
} else {
    $msg = msqli_error($conexao);
?>
    <p class="text-danger">O produto <?= $nome; ?> não foi adicionado: <?= $msg ?></p>
<?php
}
?>

<?php include("rodape.php"); ?>

Como resolver?

5 respostas
solução!

Oi Geovane, nessa linha aqui:

if($insereProduto($conexao, $nome, $preco)) {

insereProduto não precisa do $ porque ela não é uma variável e sim uma função, remova o cifrão e me fala aqui se funcionou!

Então, agora só apresentou esse erro:

 Fatal error: Call to undefined function msqli_error() in C:\wamp64\www\loja\adiciona-produto.php on line 24

A linha 24 é essa:

$msg = msqli_error($conexao);

O nome da função está escrito errado, faltou o "Y" ali. mysqli_error.

Erro na syntax amiigo, olhe:

$msg = msqli_error($conexao);

troque para :

$msg = mysqli_error($conexao);

Opa, valeu.!