2
respostas

quando executo o codigo é exibida tanta a mensagem de erro quanto a de sucesso

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

<?php
    $nome = $_GET['nome'];
    $preco = $_GET['preco'];
    $conexao = mysqli_connect('localhost','root', '', 'loja');


    $query = "INSERT INTO produtos (nome, preco) VALUES('{$nome}', {$preco})";
    if(mysqli_query($conexao, $query)){ ?>    

        <p class="alert-success">O produto <?= $nome ?>, <?= $preco ?> foi adicionado com sucesso!</p>

    <?php}else{?>
        <p class="alert-danger">O produto <?= $nome ?>, <?= $preco ?> não foi adicionado!</p>
<?php

}

    mysqli_close($conexao);

?>

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

o código esta igual ao do professor, mesmo assim nao funciona

2 respostas

Para que a mensagem apareça duas vezes, esse código deve estar sendo executado duas vezes também.

Sendo que na segunda vez, está ocorrendo algum problema na execução da query.

Boa noite Gabriel Felipe Carvalho, tudo bem?

Vamos lá, primeiro erro que vi em seu código é que você esta inserindo o cabeçalho duas vezes na página, ao final do código deveria ser:

<?php include('footer.php'); ?>

Outro erro que pode ser a solução do seu problema é em sintaxe. Confira se os dados solicitados na URL estão com o nome correto, se o nome estiver diferente ele vai mostrar as duas mensagens.

Isso acontece por que ele consegue se conectar ao banco de dados mais não existem valores para preencher o campo.

Verifique se os dados solicitados na URL estão igual aos do código.

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

Espero ter ajudado Abraços!