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! Inserindo (cadastrando) dados em uma tabela no MySQL
(Cláusula INSERT INTO) Continuando com os posts de introdução ao MySQL, vamos dar uma olhada agora como fazemos para cadastrar/inserir alguns dados em nossa tabela. Vamos tomar como referência a tabela que foi criada no post Como criar uma tabela no banco de dados MySQL. Ela está assim: CLIENTES id_cliente (INT 255) nome (TINYTEXT) telefone (VARCHAR 14) email (TEXT) Agora vamos ao nosso código de inserir os dados nesta tabela. Para isso usaremos o comando INSERT INTO. A sintaxe é essa aqui: INSERT INTO `nomedatabela` (`campo1`,`campo2`,`campo3`,...,`campon`) VALUES (valor1, valor2, valor3,..., valorn); O nosso comando INSERT INTO `meuprimeirobanco`.`clientes` ( `id_cliente`, `nome`, `telefone`, `email` ) VALUES (NULL, 'Diego Macêdo', '(82) 1111-1111', 'meu@email.com.br'); Explicando o código Linha 1 Iniciamos com o comando INSERT INTO e o nome do banco seguido pelo nome da tabela;
Linha 2 até 5 São os nomes dos meus campos da tabela Linha 6 VALUES informa que logo em seguida vem os valores que serão inseridos no campos informados anteriormente nas linhas 2 até 5. Importante saber que você deve colocar os valores na MESMA SEQUÊNCIA dos campos da tabela, para que sejam inseridos corretamente. Espero que ajude a quem está iniciando no MySQL. Pretendo ir postandos coisas básicas e ir aumentando o nível para que haja uma linha de desenvolvimento nos estudos, aumentando gradativamente os conhecimentos. Grande abraço e não deixe de comentar e dar o seu voto.