Cadastros de dados no MySQL

Depois do nosso entendimento sobre como funciona o envio de dados atravé s de um formulário para o PHP, como conectar com o MySQL, agora poderemos aprender a cadastrar os registros capturados no BD.

Começaremos utilizando o nosso formulário e o arquivo que captura as informações que foram dados de exemplo anteriormente e daremos continuidade.

O Banco de dados e a Tabela

Paa quem não lembra como criar uma base de dados e uma tabela, pode conferir nos tópicos do nosso curso de PHP. Criaremos um BD para nossos estudos chamado “aprendendo_php” e tabela chamada “agenda“, seguindo o esquema abaixo:

CREATE  DATABASE  `aprendendo_php`  DEFAULT  CHARACTER  SET latin1 COLLATE latin1_bin;

CREATE  TABLE  `aprendendo_php`.`agenda` (
`id` INT( 255  )  NOT  NULL  AUTO_INCREMENT  PRIMARY  KEY ,
`nome` TEXT NOT  NULL ,
`telefone` TEXT NOT  NULL
) ENGINE  =  MYISAM ;

Formulário de Cadastro (agenda_form.php)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Agenda - Formulário de Cadastro</title>
</head>

<body>
<form id="formulario" name="formulario" method="post" action="cadastrar_agenda.php">
 <p>Nome:
 <input type="text" name="nome" id="nome" />
 </p>
 <p>Telefone:
 <input type="text" name="telefone" id="telefone" />
 </p>
 <p>
 <input type="submit" name="button" id="button" value="Cadastrar" />
 </p>
</form>
</body>
</html>

Conexão com o BD do MySQL (conexao.php)

Como estou utilizando o EasyPHP, informei o usuario “root” e a senha vazia “”.

<?php
$servidor = "localhost";
$usuario = "root";
$senha = "";
$banco = "aprendendo_php";

$conexao = mysql_connect($servidor, $usuario, $senha);
$bd = mysql_select_db($banco, $conexao);

if(!$conexao){
 echo "Não foi possível conectar com o BD!";
 if(!$bd){
 echo "Não foi possível selecionar o BD!";
 }
}
?>

Capturando dados e cadastrando no BD (agenda_cadastrar.php)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Agenda - Cadastrando</title>
</head>

<body>
<?php
// Incluímos o arquivo de conexão para efetuar a conexão com o BD e selecionar o BD
include_once('conexao.php');

// Faremos a captura de dados do formulário e criaremos as devidas variáveis
$nome = $_POST['nome'];
$telefone = $_POST['telefone'];

// Criamos o SQL a ser executado para cadastrar em nossa tabela
$sqlCadastra = "INSERT INTO `agenda` (`id`, `nome`, `telefone`) VALUES (NULL, '".$nome."', '".$telefone."');";

// Executamos o comando SQL
$cadastrar = mysql_query($sqlCadastra, $conexao);

// Faz o teste se foi cadastrado e informa uma mensagem
if($cadastrar){
 // Aqui fica o código de exibição quando o cadastro for realizado com sucesso!
 echo "SUCESSO! Seu cadastro foi feito!<br />";
 echo "<a href=\"agenda_form.php\">Clique aqui para voltar</a>";
}else{
 // Aqui fica o código de exibição quando o cadastro não for possível ser feito por causa de algum erro!
 die("ERRO - Seu cadastro não pode ser realizado: ".mysql_error());
}
?>
</body>
</html>

Perceba que ao acessar o formulário você irá preencher os dois campos, nome e telefone. Após o envio, os dados serão capturados no arquivo “agenda_cadastrar.php” e inseridos no BD. O código está todo comentado explicando o passo-a-passo.

Após cadastrar, vá até o seu BD pelo PHPMyAdmin e entre na tabela criada para ver os registros.

Nas próximas postagens irei demonstrar como fazer a listagem dos registros de uma tabela, assim como excluir e editá-los.

Como exercício, você pode tentar implementar mais campos no seu BD, e consequentemente no seu formulário também para melhorar o código. Crie campos para e-mail, separe os números para telefone comercial, telefone residencial, celular, e o que mais você quiser.

Espero que tenham aprendido e gostado. Fico no aguardo das dúvidas. Abraços!

Sou bacharel em Sistemas de Informação pela Estácio de Sá (Alagoas), especialista em Gestão Estratégica da Tecnologia da Informação pela Univ. Gama Filho (UGF) e pós-graduando em Gestão da Segurança da Informação pela Univ. do Sul de Santa Catarina (UNISUL). Certificações que possuo: EC-Council CEH, CompTIA (Security+, CySA+ e Pentest+), EXIN (EHF e ISO 27001), MCSO, MCRM, ITIL v3. Tenho interesse por todas as áreas da informática, mas em especial em Gestão e Governança de TI, Segurança da Informação e Ethical Hacking.

7 Responses to “Cadastros de dados no MySQL”

  1. Evellyn disse:

    Como eu faço para modificar duas colunas distintas em uma tabela?

  2. Leandro disse:

    Ola… gostei muito do post… muito bem feito…
    porem 1 linha do seu codigo não consigo adaptar para mim…

    $sqlCadastra = “INSERT INTO ‘logsen’ (‘id’,’login’,’senha’) VALUES (NULL,'”.$nome.”‘,'”.$sen.”‘);”;

    retorna o seguinte erro

    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ”logsen’ (‘id’,’login’,’senha’) VALUES (NULL,’sdfsdg’,’adfsaf’)’ at line 1

    por favor se possivel me ajude =x

  3. Plínio disse:

    Fala professor.. quando tiver com tempo posta como fazer a listagem dos registros da tabela.

    Abraço.

    • Diego Macêdo disse:

      Fala Plínio, irei postar assim que possível. É que ultimamente estou estudando muito para concursos, daí pode ser que eu poste outras coisas relacionadas a TI, mas creio que o curso de PHP irá parar um pouco. Basta você deixar seu e-mail assinado para receber notícias de novas atualizações daqui, ok? Abraços!

  4. Plínio disse:

    Muito bom o topico. Fico bem explicado e detalhado.
    Irei aguardar os proximos para ver como faz a listagem. Abraços

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *