Como Usar PHP para Inserir Dados num Banco de Dados MySQL

Você está aqui:

Como Escrever o Código PHP para Inserir Dados no Banco de Dados MySQL

Existe dois métodos que você pode usar para fazer o INSERT (Inserção) de dados na sua database MySQL. São eles: método PHP MySQLi e PHP Data Object (ou método PDO).

Método MySQLi

Primeiro de tudo, você deve estabelecer uma conexão com o banco de dados. Depois dessa etapa, podemos prosseguir com o INSERT do query do MySQL. Aqui está um exemplo de código completo com os métodos básicos de conexão e inserção:

A primeira parte do código (linhas 3 – 18) é sobre a atual conexão do banco de dados. Não vamos passar pelo processo todo novamente. Contudo, se você deseja saber o que cada linha de código significa,

Vamos começar pela linha 19:$sql = “INSERT INTO Students (name, lastname, email) VALUES (‘Test’, ‘Testing’, ‘Testing@tesing.com’)”;

Esta é a linha mais importante do nosso código e que executa tudo o que a gente quer aprender neste tutorial – inserir dados MySQL PHP. O INSERT INTO é uma instrução que adiciona dados em banco de dados específicos da tabela. Neste exemplo, estamos adicionando dados à tabela Students.

Seguindo adiante, entre os colchetes, temos as colunas de tabela para as quais queremos adicionar valores (namelastnameemail). Os dados vão ser preenchidos na ordem especificada. Se escrevêssemos (email, lastname, name), os valores seriam adicionados na ordem errada.

A próxima parte é sobre a declaração VALUES. Aqui especificamos os valores para as colunas determinadas anteriormente. Dessa maneira, cada coluna representa um valor específico. Por exemplo, no nosso caso ele seria: name = Thom, lastname = Vial, email = thom.v@some.com.

Outra coisa relevante é que acabamos de executar a SQL Query usando um código PHP.  Lembrando que as SQL Queries devem ser posicionados entre as citações. No nosso exemplo, tudo o que está entre citações e depois de $sql = é uma SQL Query.  

A próxima parte do código (linhas 20 – 22) mostra se nosso pedido foi feito com sucesso.if (mysqli_query($conn,$sql)) { echo “New record created successfully”;}

Ele simplesmente mostra uma mensagem de sucesso se o pedido que executamos foi realizado.

E a parte final (linhas 22 – 24) mostra uma mensagem diferente caso o pedido não seja executado com sucesso:else { echo “Error: ” . $sql . “<br>” . mysqli_error($conn);}

Ele vai mostrar uma mensagem de erro caso algo dê errado.

Método PHP Data Object (PDO)

Assim como no exemplo anterior, precisamos primeiro de uma conexão com o banco de dados criando um novo objeto PDO.

Como a conexão ao banco de dados MySQL é um objeto PDO, você deve usar vários métodos PDO (qualquer função que seja parte de qualquer objeto) para preparar e fazer os pedidos. Os métodos de objetos são chamados assim:

$the_Object->the_Method();

O PDO permite que você prepare o código SQL antes dele ser executado. A SQL Query é avaliada e corrigida antes de ser executada. Um ataque de injeção de SQL simplificado poderia ser feito apenas escrevendo o código SQL em um campo de um formulário. Por exemplo:

Como existe um código de SQL sintaticamente correto, o ponto e vírgula faz do DROP DATABASE user_table uma nova SQL Query, e a sua tabela é apagada. Declarações preparadas não permitem os caracteres de aspas (“) e nem ponto e vírgula (;) no final da solicitação original e a instrução maliciosa DROP DATABASE nunca será executada.

Para usar declarações preparadas, você deve escrever uma nova variante que chame o método prepare() do objeto do banco de dados.

Was this article helpful?
Dislike 0