Na parte anterior desta série MySQL, forneci uma visão geral da manipulação de tabelas no MySQL. Nesta parte da série de tutoriais, ensinarei como criar CRUD em PHP e MySQL executando insert , atualizar e excluir consultas. Essas consultas podem ser executadas das seguintes maneiras.
Execução de consulta única
Ele executa uma única consulta por vez. Vamos começar inserindo dados em nosso banco de dados que criamos anteriormente em nossa hospedagem para PHP MySQL. Crie um novo arquivo php na pasta “prática ” que criamos anteriormente e o nomeie crud.php. CRUD é a abreviação de criar, ler, atualizar e excluir consultas. Agora no novo arquivo, adicione esta linha no topo require_once ‘db_connection.php’ e crie esta nova função:
require_once 'db_connection.php'; function SingleQuery($queri) { $conn = OpenCon(); if($conn->query($queri) === TRUE) { CloseCon($conn); return true; } else { return $conn->error; } }
A função usa um único parâmetro como sua consulta necessária e a executa. Agora, crie um novo arquivo, index2.php na mesma pasta e no topo adicione esta linha require_once ‘crud.php’. Agora adicione estas linhas em seu index2.php:
include 'crud.php'; $sql = "INSERT INTO myguests(firstname,lastname,email,subject) VALUES ('w','w','[email protected]','First Insert Using Single Query')"; $result = SingleQuery($sql); if($result === true) { echo 'success'; } else { echo $result; }
Em seguida, abra seu navegador e localize para localhost/practice/index2.php e você terá sucesso se tiver digitado a consulta correta.
Execução de várias consultas
Usando este método, você pode executar mais de um inserir , selecione ou atualizar inquerir. Vamos começar escrevendo uma função para Multi Insert ou Atualizar consultas. Escreva esta nova função em seu arquivo crud.php
function MultiQuery($quries) { $conn = OpenCon(); if($conn->multi_query($quries) === true) { CloseCon($conn); return true; } else { return $conn->error; } }
A função usa um único parâmetro como sua consulta necessária e a executa. Agora, chame esta função em seu index2.php:
include 'crud.php'; $sql = "INSERT INTO myguests(firstname,lastname,email,subject) VALUES ('a','a','[email protected]','First Insert Using Multiple Queries');"; $sql .= "INSERT INTO myguests(firstname,lastname,email,subject) VALUES ('b','b','[email protected]','First Insert Using Multiple Queries');"; $sql .= "INSERT INTO myguests(firstname,lastname,email,subject) VALUES ('c','c','[email protected]','First Insert Using Multiple Queries');"; $result = MultiQuery($sql); if($result === true) { echo 'success'; } else { echo $result; }
Agora, abra seu navegador e localize para localhost/practice/index2.php e você terá sucesso se tiver digitado a consulta correta.
Nada tão fácil quanto implantar aplicativos PHP na nuvem
Com o Cloudways, você pode colocar seus aplicativos PHP em execução em servidores de nuvem gerenciados em apenas alguns minutos.
Comece grátis
CRUD em PHP e MySQL com instruções preparadas
As instruções preparadas são usadas para executar a mesma consulta várias vezes com alta eficiência. Agora escreva esta nova função em seu arquivo crud.php:
function PreQuery($fname,$lname,$email,$subj) { $conn = OpenCon(); $query = $conn->prepare("INSERT INTO myguests(firstname, lastname, email, subject) VALUES (?,?,?,?)"); $query->bind_param("ssss", $fname,$lname,$email,$subj); if($query->execute()) { CloseCon($conn); return true; } else { return $conn->error; } }
Estaremos selecionando dados usando declarações preparadas. Vamos ver como a declaração preparada funciona:
- Primeiro, você prepara sua declaração como INSERT INTO myguests(firstname, lastname, email, subject) VALUES (?,?,?,?). Saímos de ? onde queremos inserir os valores.
- Segundo, vincularemos esses valores. O primeiro parâmetro usa os tipos de dados do valor e depois disso, os valores. O argumento de tipo de dados pode ser de quatro tipos.
- i – inteiro
- s – sequência
- d – duplo
- b – bolha
- Nós o executaremos.
A função recebe quatro parâmetros como seu valor necessário e o executa. Agora, chame esta função em seu index2.php:
include 'crud.php'; $firstn = "Ahmed"; $lastn = "Khan"; $email = "[email protected]"; $subject = "Inserting Data using prepared Query"; $result = PreQuery($firstn,$lastn,$email,$subject); if($result === true) { echo 'success'; } else { echo $result; }
Agora, abra seu navegador e localize para localhost/practice/index2.php e você terá sucesso se tiver digitado a consulta correta.
Selecione a execução da consulta
Agora, vamos selecionar os dados do nosso banco de dados MySQL usando a execução de consulta única. Escreva uma nova função em seu crud.php escrita abaixo:
function selectdata($sql) { $conn = OpenCon(); $result = $conn->query($sql); if($result) { if($result->num_rows > 0) { return $result; } else { return "zero"; } } else { return $result->error; } }
A função primeiro verifica se a consulta foi executada com sucesso. Se não, ele envia um erro. Em segundo lugar, verifica se o número de linhas é maior que 0 ou não. Em caso afirmativo, ele envia “Zero resultados encontrados”. Agora, chame esta função em index2.php e escreva o seguinte código:
<table> <tr> <td> Name</td> <td> Email</td> <td> Message</td> </tr> <?php include 'crud.php'; $sql = "SELECT * FROM `myguests`"; $result = selectdata($sql); if($result != "zero") { while($row = $result->fetch_assoc()) { echo "<tr>"; echo "<td>" . $row['firstname'].' '.$row['lastname'] . "</td>"; echo "<td>" . $row['email']. "</td>"; echo "<td>" . $row['subject']. "</td>"; echo "</tr>"; } } else { echo $result; } ?> </table>
Depois disso, abra seu navegador e localize em localhost/practice/index2.php e você encontrará todos os dados armazenados em seu banco de dados em sua página index2.php.
Atualizar consulta usando declaração preparada
Vamos escrever uma nova função em seu arquivo crud.php para executar a instrução de atualização:
function UpdateQuery($column,$value,$id) { $conn = OpenCon(); $query = $conn->prepare("UPDATE myguests SET $column = ? WHERE id = ?"); $query->bind_param("si",$value,$id); if($query->execute()) { CloseCon($conn); return true; } else { return $conn->error; } }
O parâmetro de atualização usa três parâmetros. Um é o nome da coluna que precisa ser atualizado, o segundo é o valor que será substituído pelo valor anterior e o terceiro é o ID da linha em que será alterado. Agora, execute esta função em index2.php :
include 'crud.php'; $result = UpdateQuery("firstname","David",1); if($result === true) { echo 'success'; } else { echo $result; }
Quando você tiver feito isso, abra seu navegador e localize para localhost/practice/index2.php e você terá sucesso se não houver nenhum erro.
Excluir consulta usando declaração preparada
Vamos escrever uma nova função em seu arquivo crud.php para executar uma instrução delete:
function DeleteQuery($id) { $conn = OpenCon(); $query = $conn->prepare("DELETE FROM myguests WHERE id = ?"); $query->bind_param("i",$id); //var_dump($query); if($query->execute()) { CloseCon($conn); return true; } else { return $conn->error; } }
O parâmetro delete recebe um parâmetro que será o ID da linha que precisa ser excluída da tabela. Agora, execute esta função em index2.php:
include 'crud.php'; $result = DeleteQuery(1); if($result === true) { echo 'success'; } else { echo $result; }
Depois disso, abra seu navegador e localize para localhost/practice/index2.php e você encontrará sucesso se não houver erro.
Conclusão
Neste tutorial, aprendemos como executar CRUD em PHP e MySQL de três maneiras diferentes. Na próxima parte desta série MySQL, discutirei as cláusulas de busca de dados MySQL. Aqui está uma breve introdução e uma lista dos principais tópicos desta série MySQL.
Se você tiver alguma dúvida sobre o que aprendemos neste tutorial, sinta-se à vontade para comentar abaixo! Boa sorte! 🙂