Bóson Treinamentos em Ciência e Tecnologia

Curso de PHP- Inserir dados em um banco de dados MySQL

Cadastrando dados no MySQL com PHP

Inserindo dados no Banco de Dados MySQL

Nesta lição vamos aprender a inserir dados (cadastrar) no banco de dados. Trata-se de uma operação extremamente comum e importante, e nós vamos inserir no banco dados provenientes de um formulário HTML.

Usando nosso banco de dados de exemplo das lições anteriores, vamos efetuar o cadastro de dados a partir dos valores inseridos no Formulário de Cadastro de Clientes, cujos dados serão inseridos na tabela cadastro do banco de dados banco_teste, que possui os campos NomeCliente, SobrenomeCliente e Sexo.

Campos da tabela cadastro

Usaremos o comando SQL a seguir:

INSERT INTO cadastro (NomeCliente, SobrenomeCliente, Sexo) VALUES ‘$nome’, ‘$sobrenome’, ‘$sexo’; 

Onde $nome, $sobrenome e $sexo são os valores obtidos a partir do formulário de cadastro de nossa página de exemplo:

A seguir temos o código da página que contém o formulário de cadastro de clientes, conforme exibida na figura anterior:

<!DOCTYPE html>
<html lang="pt-br">
<head>
  <meta charset="utf-8">
  <title> Testando conexão ao banco de dados </title>
</head>
<body>
  <h3>Formulário de Cadastro de Clientes</h3><br>
  <form name="Cadastro" action="cadastrar.php" method="POST">
    <label>Nome do Cliente: </label>
    <input type="text" name="NomeCliente" size="30"><br>
    <label>Sobrenome do Cliente: </label>
    <input type="text" name="SobrenomeCliente" size="45"><br>
    <label>Sexo do Cliente: </label>
    <select name="Sexo">
      <option value="M">Masculino</option>
      <option value="F">Feminino</option>
      <option value="N">Não Declarado</option>
    </select><br>
    <input type="submit" name="enviar" value="Enviar">
  </form>
</body>
</html>

Ao clicar no botão Enviar, os dados são enviados para processamento por um script PHP que batizaremos de cadastrar.php para execução do cadastro.

Vamos ao código exemplo do script cadastrar.php:

Código do script PHP

Crie um novo script de nome cadastrar.php e insira o código a seguir nele. Logo após salve-o:

<?php
$nome = $_POST['NomeCliente'];
$sobrenome = $_POST['SobrenomeCliente'];
$sexo = $_POST['Sexo'];
$strcon = mysqli_connect('localhost','fabio','123','banco_teste') or die('Erro ao conectar ao banco de dados');
$sql = "INSERT INTO cadastro VALUES ";
$sql .= "('$nome', '$sobrenome', '$sexo')"; 
mysqli_query($strcon,$sql) or die("Erro ao tentar cadastrar registro");
mysqli_close($strcon);
echo "Cliente cadastrado com sucesso!";
echo "<a href='formulario.html'>Clique aqui para realizar um novo cadastro</a><br>";
echo "<a href='consulta.php'>Clique aqui para realizar uma consulta</a><br>";
?>

Nesse script nós:

  1. Capturamos os dados provenientes do formulário HTML por meio da variável $_POST
  2. Abrimos a conexão com o banco usando mysqli_connect()
  3. Criamos a declaração sql
  4. Executamos o comando sql no banco usando mysqli_query()
  5. Fechamos a conexão com mysqli_close()

Vamos incluir um registro no banco de dados a partir de nosso formulário. Veja o form da página preenchido a seguir:

Após preencher o cadastro e clicar no botão enviar, os dados serão enviados do formulário para o script cadastra.php, e se não houver nenhum problema, serão gravados no banco de dados, e a seguinte mensagem será mostrada na página:

Excelente! Temos agora um script que pode ser utilizado para cadastrar dados em um banco de dados MySQL. Esse script pode ser bem refinado ainda, com a inclusão de testes de validação de campos, verificação de erros diversos de conexão e gravação no banco, e outras melhorias que vamos mostrar nos próximos tutoriais.

Usando arquivo externo de conexão ao banco de dados

Uma outra forma de criar o arquivo cadastrar.php é separando as informações de conexão ao banco de dados em um outro arquivo, e importando esses dados ao carregar a página de cadastro.

Veja o código a seguir:

<?php
include_once("conectar.php");
$nome = $_POST['NomeCliente'];
$sobrenome = $_POST['SobrenomeCliente'];
$sexo = $_POST['Sexo'];
if (!$strcon) {
 die('Não foi possível conectar ao Banco de Dados');
}
$sql = "INSERT INTO cadastro VALUES ";
$sql .= "('$nome', '$sobrenome', '$sexo')"; 
mysqli_query($strcon,$sql) or die("Erro ao tentar cadastrar registro");
mysqli_close($strcon);
echo "Cliente cadastrado com sucesso!<br>";
echo "<a href='formulario.html'>Clique aqui para realizar um novo cadastro</a><br>";
echo "<a href='consulta.php'>Clique aqui para realizar uma consulta</a><br>";
?>

Neste caso, utilizamos a função include_once logo no início do script para inserir automaticamente o conteúdo do arquivo conectar.php na página de cadastro, quando ela for carregada. O arquivo conectar.php contém os dados para conexão ao banco de dados e criação da string d conexão utilizada. Veja se código a seguir:

<?php
/* Dados do Banco de Dados a conectar */
$Servidor = 'localhost';
$nomeBanco = 'banco_teste';
$Usuario = 'fabio';
$Senha = '123';
$strcon = mysqli_connect($Servidor, $Usuario, $Senha, $nomeBanco); 
?>

Também realizamos uma modificação no arquivo cadastrar.php, trocando a linha que cria a string de conexão:

$strcon = mysqli_connect(‘localhost’,’fabio’,’123′,’banco_teste’) or die(‘Erro ao conectar ao banco de dados’);

por um teste condicional para verificar se ela foi criada a partir da importação do arquivo conecta.php:

if (!$strcon) {
die(‘Não foi possível conectar ao Banco de Dados’);
}

É isso aí! Agora devemos aprender a realizar consultas no banco de dados, a fim de verificar os dados que foram gravados e obter informações específicas armazenadas no MySQL.

Esse é o assunto de nossa próxima lição.

Sair da versão mobile