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

Aparecendo mensagem adicionado com sucesso mesmo sem preencher os campos.

<?php include("cabecalho.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', '', 'loja');

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

Produto <?= $nome ?>, preço = <?= $preco ?> adicionado com sucesso!

<?php

} else { $msg = mysqli_error($conexao); ?>

Produto <?= $nome ?> não foi adicionado!<?= $msg?>

<?php

}

?>

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

2 respostas

pode fazer assim verifica com a condição ternária, pois string vazia ela retorna false depois só verifica com um if. Tem diversas possibilidades de fazer isso valeu se resolvido da um resolvido valeu $nome = $_GET["nome"] ? $_GET["nome"] : ""; $preco = $_GET["preco"] ? $_GET["preco"]: "";

if($nome or $preco){ insereProduto($conexao, $nome, $preco); Produto <?= $nome ?>, preço = <?= $preco ?> adicionado com sucesso!

}

solução!

já tinha solucionado coloquei uma condição dentro da função e deu certo. más de qualquer forma obrigado pela ajuda.

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

        <?php 

            function insereProduto($conexao, $nome, $preco){
                if($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', '', 'loja');            

            if(insereProduto($conexao, $nome, $preco)) { 
        ?>
            <p class="text-success">Produto <?= $nome ?>, preço  <?= $preco ?> adicionado com sucesso!</p>

        <?php 

            } else { 
            $msg = mysqli_error($conexao);
        ?>
            <p class="text-danger">Produto <?= $nome ?> não foi adicionado!<?= $msg?></p>

        <?php                

            }            

        ?>

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

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software