Vamos criar um arquivo chamado connection.php
, neste arquivo vamos abrir uma conexão com nosso banco de dados.
Dessa forma, quando precisarmos de uma conexão com o banco de dados para executar uma query
, só precisamos incluir o arquivo connection.php
.
$link = mysqli_connect('localhost', 'username', 'password', 'database_name') or die(mysqli_connect_error());
// Configurando o charset de caracteres do cliente
mysqli_set_charset($link, 'utf8');
Neste exemplo estamos inserindo um novo usuário em nossa tabela users
do banco de dados.
require 'connection.php';
$query = 'insert into `users` (`name`, `email`) values ("Lucas Pires", "[email protected]")';
mysqli_query($link, $query) or die(mysqli_error($link));
Neste exemplo, estamos lendo todos os usuários cadastrados na tabela users
e exibindo em uma lista.
require 'connection.php';
$query = 'select * from `users`';
$results = mysqli_query($link, $query) or die(mysqli_error($link));
if (! mysqli_num_rows($results)) {
echo 'Nenhum usuário encontrado...';
} else {
while ($user = mysqli_fetch_object($results)) {
echo $user->name, "\n";
}
}
Neste exemplo estamos atualizando o e-mail do usuário com id
igual a 1
da nossa tabela users
.
require 'connection.php';
$query = 'update `users` set `email` = "[email protected]" where `id` = 1';
mysqli_query($link, $query) or die(mysqli_error($link));
Neste exemplo estamos deletando o usuário com id
igual a 1
da nossa tabela users
.
require 'connection.php';
$query = 'delete from `users` where `id` = 1';
mysqli_query($link, $query) or die(mysqli_error($link));
Primeiro vamos construir um formulário simples para o cadastro de um usuário.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Cadastro de usuário</title>
</head>
<body>
<form action="signup.php" method="post">
<p>
<label>Nome</label><br>
<input type="text" name="name">
</p>
<p>
<label>E-mail</label><br>
<input type="text" name="email">
</p>
<button type="submit">Cadastrar</button>
</form>
</body>
</html>
```
Note que em nossa tag `form` definimos o atributo `action` com o valor `signup.php`, quando o formulário é enviado, este arquivo `signup.php` irá receber uma **requisição** com os dados (`name`, `email`) preenchidos no formulário, o tipo desta **requisição** é definido no attributo `method`, e foi definido com `POST`, isso quer dizer que o arquivo `signup.php` deve receber uma requisição do tipo `POST` quando o botão `Cadastrar` for pressionado.
### 2. Recebendo dados do formulário e salvando no banco
Ok, nosso formulário está criado e configurado para enviar os dados preenchidos para o arquivo `signup.php`, então vamos criar este arquivo, tratar e salvar os dados recebidos no banco de dados.
``` php
require 'connection.php';
// Armazenando os dados enviados pelo formulário em um array na var $post
$post = filter_input_array(INPUT_POST, FILTER_DEFAULT);
// Separando informações que devem ser inseridas no banco de dados
// Lembrando que os indices do array devem ter os mesmos nomes dos campos no formulário (definido pelo attribudo 'name' nas tags 'input')
// Utilizamos a função `mysqli_real_escape_string` para proteger o nosso banco de dados contra SQL Injections
// Veja mais sobre SQL Injections em https://pt.wikipedia.org/wiki/Inje%C3%A7%C3%A3o_de_SQL
$name = mysqli_real_escape_string($link, $post['name']);
$email = mysqli_real_escape_string($link, $post['email']);
// Preparando a query com os valores preenchidos no formulário
$query = "insert into `users` (`name`, `email`) values ('{$name}', '{$email}')";
// Executando query
mysqli_query($link, $query) or die(mysqli_error($link));
```
OBRIGADÃO MESMO :)