Aprenda a conectar e manipular dados com MySQLi no PHP

Veja como utilizar MySQLi para conectar, inserir, buscar e manipular dados no banco MySQL com PHP.

Como usar MySQLi no PHP?

O MySQLi (MySQL Improved) é uma extensão do PHP que permite interagir com bancos de dados MySQL de forma otimizada e segura. Ele pode ser utilizado de duas maneiras: procedural e orientado a objetos.

Conectando ao MySQL com MySQLi

Modo Procedural

<?php
$conexao = mysqli_connect("localhost", "usuario", "senha", "meu_banco");
if (!$conexao) {
    die("Falha na conexão: " . mysqli_connect_error());
}
echo "Conexão bem-sucedida!";
?>

Aqui, mysqli_connect() estabelece a conexão com o banco de dados.

Modo Orientado a Objetos

<?php
$conexao = new mysqli("localhost", "usuario", "senha", "meu_banco");
if ($conexao->connect_error) {
    die("Erro na conexão: " . $conexao->connect_error);
}
echo "Conexão bem-sucedida!";
?>

Nesse formato, usamos um objeto mysqli para gerenciar a conexão.

Executando Consultas com MySQLi

Inserindo Dados

<?php
$sql = "INSERT INTO usuarios (nome, email) VALUES ('João Silva', 'joao@email.com')";
if (mysqli_query($conexao, $sql)) {
    echo "Registro inserido com sucesso!";
} else {
    echo "Erro: " . mysqli_error($conexao);
}
?>

Aqui, mysqli_query() executa um comando SQL para inserir dados.

Buscando Dados

<?php
$sql = "SELECT id, nome, email FROM usuarios";
$resultado = mysqli_query($conexao, $sql);
while ($linha = mysqli_fetch_assoc($resultado)) {
    echo "ID: " . $linha["id"] . " - Nome: " . $linha["nome"] . " - Email: " . $linha["email"] . "<br>";
}
?>

Aqui, mysqli_fetch_assoc() recupera os dados como um array associativo.

Segurança com Prepared Statements

Para evitar SQL Injection, utilize prepared statements:

<?php
$stmt = $conexao->prepare("SELECT * FROM usuarios WHERE email = ?");
$stmt->bind_param("s", $email);
$email = "joao@email.com";
$stmt->execute();
$resultado = $stmt->get_result();
?>

O uso de bind_param() garante que os valores sejam tratados como entrada segura.

O MySQLi é uma das formas mais populares de interação entre PHP e MySQL. Ele permite a manipulação de bancos de dados de maneira eficiente e segura, especialmente quando se utiliza prepared statements para evitar SQL Injection. Escolher entre MySQLi e PDO depende das necessidades do projeto, mas para quem trabalha exclusivamente com MySQL, MySQLi pode ser uma ótima escolha.

Algumas aplicações:

  • Criação de sistemas de autenticação
  • Manipulação de bancos de dados em sites dinâmicos
  • Gestão de cadastros e informações de usuários
  • Interação com grandes volumes de dados armazenados

Dicas para quem está começando

  • Use MySQLi se for trabalhar exclusivamente com MySQL.
  • Prefira prepared statements para evitar vulnerabilidades de segurança.
  • Evite usar SELECT *, especifique apenas as colunas necessárias.
  • Certifique-se de fechar conexões após o uso para economizar recursos.
  • Se precisar de compatibilidade com outros bancos, considere o uso de PDO.

Contribuições de Rafael Nogueira

Compartilhe este tutorial: Como usar MySQLi no PHP?

Compartilhe este tutorial

Continue aprendendo:

Como usar PDO para conectar o PHP ao MySQL?

Veja como estabelecer uma conexão segura entre PHP e MySQL utilizando PDO, garantindo flexibilidade e segurança.

Tutorial anterior

Qual a diferença entre MySQLi e PDO no PHP?

Veja as vantagens e diferenças entre MySQLi e PDO para manipulação de bancos de dados no PHP e qual tecnologia escolher para seu projeto.

Próximo tutorial