Nella puntata precedente di questa serie MySQL, ho fornito una panoramica della manipolazione delle tabelle in MySQL. In questa parte della serie di tutorial, ti insegnerò come creare CRUD in PHP e MySQL eseguendo insert , aggiornamento ed elimina interrogazioni. Queste query possono essere eseguite nei seguenti modi.
Esecuzione di query singola
Esegue una singola query alla volta. Iniziamo inserendo i dati nel nostro database che abbiamo creato in precedenza sul nostro hosting per PHP MySQL. Crea un nuovo file php nella cartella “pratica ” che abbiamo precedentemente creato e denominarlo crud.php. CRUD è l'abbreviazione di Crea, Leggi, Aggiorna ed Elimina query. Ora nel nuovo file, aggiungi questa riga in alto require_once 'db_connection.php' e crea questa nuova funzione:
require_once 'db_connection.php'; function SingleQuery($queri) { $conn = OpenCon(); if($conn->query($queri) === TRUE) { CloseCon($conn); return true; } else { return $conn->error; } }
La funzione accetta un singolo parametro come query richiesta e lo esegue. Ora crea un nuovo file, index2.php nella stessa cartella e in alto aggiungi questa riga require_once 'crud.php'. Ora aggiungi queste righe nel tuo 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; }
Quindi apri il tuo browser e individua localhost/practice/index2.php e avrai successo se hai digitato la query giusta.
Esecuzione di più query
Usando questo metodo, puoi eseguire più di un inserimento , seleziona o aggiorna interrogazione. Iniziamo scrivendo una funzione per Inserimento multiplo o Aggiorna interrogazioni. Scrivi questa nuova funzione nel tuo file crud.php
function MultiQuery($quries) { $conn = OpenCon(); if($conn->multi_query($quries) === true) { CloseCon($conn); return true; } else { return $conn->error; } }
La funzione accetta un singolo parametro come query richiesta e lo esegue. Ora, chiama questa funzione nel tuo 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; }
Ora, apri il tuo browser e individua localhost/practice/index2.php e avrai successo se hai digitato la query giusta.
Niente di facile come distribuire app PHP su Cloud
Con Cloudways, puoi far funzionare le tue app PHP su server cloud gestiti in pochi minuti.
Inizia gratisCRUD in PHP e MySQL con istruzioni preparate
Le istruzioni preparate vengono utilizzate per eseguire la stessa query più volte con elevata efficienza. Ora scrivi questa nuova funzione nel tuo file 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; } }
Selezioneremo i dati utilizzando le istruzioni preparate. Vediamo come funziona la dichiarazione preparata:
- Per prima cosa, prepari la tua dichiarazione come INSERT INTO myguests(firstname, lastname, email, subject) VALUES (?,?,?,?). Siamo partiti ? dove vogliamo inserire i valori.
- In secondo luogo, legheremo quei valori. Il primo parametro prende i tipi di dati del valore e, successivamente, i valori. L'argomento del tipo di dati può essere di quattro tipi.
- i – intero
- s – stringa
- d – doppio
- b – blob
- Lo eseguiremo.
La funzione prende quattro parametri come valore richiesto e lo esegue. Ora, chiama questa funzione nel tuo 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; }
Ora, apri il tuo browser e individua localhost/practice/index2.php e avrai successo se hai digitato la query giusta.
Seleziona esecuzione query
Ora, selezioniamo i dati dal nostro database MySQL utilizzando l'esecuzione di query singole. Scrivi una nuova funzione nel tuo crud.php scritto di seguito:
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; } }
La funzione verifica innanzitutto che la query venga eseguita correttamente. In caso contrario, invia un errore. In secondo luogo, controlla se il numero di righe è maggiore di 0 o meno. In tal caso, invia "Risultati trovati zero". Ora, chiama questa funzione in index2.php e scrivi il seguente codice:
<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>
Dopodiché, apri il tuo browser e individua localhost/practice/index2.php e troverai tutti i dati archiviati nel tuo database nella tua pagina index2.php.
Aggiorna query utilizzando l'istruzione preparata
Scriviamo una nuova funzione nel tuo file crud.php per eseguire l'istruzione di aggiornamento:
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; } }
Il parametro di aggiornamento accetta tre parametri. Uno è il nome della colonna che deve essere aggiornato, il secondo è il valore che verrà sostituito dal valore precedente e il terzo è l'ID della riga in cui verrà modificato. Ora, esegui questa funzione in index2.php :
include 'crud.php'; $result = UpdateQuery("firstname","David",1); if($result === true) { echo 'success'; } else { echo $result; }
Al termine, apri il browser e individua localhost/practice/index2.php e avrai successo se non ci sono errori.
Elimina query utilizzando l'istruzione preparata
Scriviamo una nuova funzione nel tuo file crud.php per eseguire un'istruzione di eliminazione:
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; } }
Il parametro delete accetta un parametro che sarà l'ID della riga che deve essere eliminata dalla tabella. Ora, esegui questa funzione in index2.php:
include 'crud.php'; $result = DeleteQuery(1); if($result === true) { echo 'success'; } else { echo $result; }
Successivamente, apri il browser e individua localhost/practice/index2.php e troverai il successo se non ci sono errori.
Conclusione
In questo tutorial abbiamo imparato come eseguire CRUD in PHP e MySQL utilizzando tre modi diversi. Nella prossima puntata di questa serie MySQL, parlerò delle clausole di recupero dei dati MySQL. Ecco una breve introduzione e un elenco degli argomenti principali di questa serie MySQL.
Se hai domande su ciò che abbiamo imparato in questo tutorial, sentiti libero di commentare di seguito! In bocca al lupo! 🙂