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

Dúvida no Ex. 2 da Aula 3 - Criando Funções no PHP

<?php include "./head.php";?>

<?php

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

$nome = $_GET["nome"];
$preco = $_GET["preco"];
$conexao = mysqli_connect('localhost', 'root', '', 'loja2');

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

ao incluir algum produto ou até mesmo como nulo e clicar em gravar o sistema emite a mensagem : Catchable fatal error: Object of class mysqli could not be converted to string in C:\xampp\htdocs\Loja_Virtual\adiciona-produto.php on line 6

O que eu faço?

2 respostas
solução!

Ola Pedro,

o seu if está passando duas variáveis $conexao como parâmetro

if (insereProduto($conexao, $conexao, $query))

Corrige isso e faça um teste, tem que ser passado $conexao $nome $preco.

Att,

Obrigado.