Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Estou com dúvida no curso de PHP, MySQL e Fundamentos da Web, no exercício do capítulo Criando Funções no PHP.

Estou com duvidas fiquei confuso no if para tratar do erro...O banco recebe os dados mesmo com a condição do IF

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

<?php

function insereProduto($conexao, $nome, $email, $fone) {

$query = "insert into cadastro(nome, email, fone) values ('{$nome}', '{$email}', '{$fone}')"; return mysqli_query($conexao, $query);

}

$nome = $_GET["nome"]; $email = $_GET["email"]; $fone = $_GET["fone"];

$conexao = mysqli_connect('localhost', 'root', '', 'cadastro');

if(insereProduto($conexao, $nome, $email, $fone)){ ?>

<?= $nome?>, Cadastro realizado com sucesso! Para confirmação acesse seu e-mail <?= $email?>

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

?>

Atenção <?= $nome?>, Cadastro não realizado algo esta faltando, alguns preechimentos nos campos:<?= $msg?>

<?php

} ?>

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

1 resposta
solução

Oi Jose,

use as formatações, isso facilita um pouco a leitura do seu código.

A linha

if(insereProduto($conexao, $nome, $email, $fone)){

sempre executa a funcao insereProduto(..) e consequentemente vai tentar acessar o banco. O if verifica apenas se há algum problema ao executar aquela função. Ficou mais claro?

Abs