conexão php/myphpadmin(banco de dados)

05/10/2019

0

Não estou conseguindo efetuar a conexão da página com o banco de dados, apesar de não apresentar erro, a conexão é inexistente. E o cadastro do ingrediente não é efetuado. Conclui que o problema não é no banco de dados, então acredito que seja do código. Boa noite, obrigado pela atenção.
Arquivo (ingrediente.php)
<?php
session_start();
?>
<!DOCTYPE html>

<html lang= "pt-bt">
<head>
<meta charset= "utf-8">
<title>Cadastro</title>
</head>
<link href="http://127.0.0.1/edsa-edsa-bananinhas%20receitas/ingredientes/ingrediente.css" rel="Stylesheet" type="text/css">

<body>
<?php
if(isset($_SESSION['msg'])){
echo $_SESSION['msg'];
unset($_SESSION['msg']);
}
?>
<div class="container">
<form id="contact" action="processa.php" method="post">
<h3>Cadastro de Ingrediente</h3>

<input type="text" name="Nome" placeholder="Nome do Ingrediente" required="required">

<button type="submit" id="cadastrar">Cadastrar</button>
</form>
</div>
</body>
</html>

arquivo (conexão.php)
<?php
function cadastro($Nome) {
$connection = mysqli_connect("localhost", "root", "", "bananasql");
// Check connection
if($connection === false){
die("Deu ruim mano!" . mysqli_connect_error());
}
$result = mysqli_query($connection, $sql);
$erro = "";

if (mysqli_num_rows($result) > 0) {
return false;
}

$sql = "INSERT INTO ingredientes (Nome) VALUES
('$Nome')";

if(!mysqli_query($connection, $sql)){
die("Deu ruim no cadastro $sql. " . mysqli_error($connection));
}
mysqli_close($connection);
return true;
}
?>
arquivo (processa.php)

<?php
require "conexao.php";
session_start();


$Nome = $_POST["Nome"];

$result_ingredientes = "INSERT INTO ingredientes (nome) VALUES ('$nome')";
$resultado_ingredientes = mysqli_query($connection,$result_ingredientes);

if(mysqli_insert_id($connection)){
$_SESSION['msg'] = "ingrediente cadastrado com sucesso";
header("location:ingrediente.php");
} else{
$_SESSION['msg']="<p style= 'color:black;'>ingrediente não foi cadastrado com sucesso</p>";
header("location:ingrediente.php");
}
?>
Thaynan Vilela

Thaynan Vilela

Responder

Posts

07/10/2019

Alex William

Olá, amigo. Tudo bem?

Vamos por partes, como dizia o esquartejador.

1º Sua conexão(seu codigo que conecta), está dentro de uma função. Quando você tenta cadastrar no "processa.php" você chama a conexão, mas não a função logo a conexão não esta estanciada e gera esse erro.

2º Sua funçao de conexao recebe o parametro $Nome, logo em seguida você utiliza uma variavel $sql que não esta declarada nem estanciada.

Primeiro deixe sua conexao, desta forma somente.
<?php
    $connection = mysqli_connect("localhost", "root", "", "bananasql");
    
    // Check connection
    if($connection === false){
        die("Deu ruim mano!" . mysqli_connect_error());
    }
?>


Verifique se da algum erro, e me informe.

Espero ter ajudado. :D
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar