English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial di base PHP

Tutorial avanzato PHP

PHP & MySQL

Manuale di riferimento PHP

Eliminazione MySQL PHP

In questo tutorial, imparerai come utilizzare PHP per eliminare i record dalla tabella MySQL.

Eliminare i dati della tabella del database

Come quando si inseriscono record nel tavolo, si può usare SQL DELETEL'istruzione DELETE elimina i record dal tavolo. Di solito viene utilizzata con la clausola WHERE per eliminare solo quei record che corrispondono a determinate condizioni o condizioni.

La sintassi di base dell'istruzione DELETE può essere fornita nel modo seguente:

DELETE FROM table_name WHERE column_name=some_value

Usiamo una query SQL con la clausola WHERE e l'istruzione DELETE per eseguire una query SQL, quindi passiamola alla funzione PHP mysqli_query() per eseguire questa query e eliminare le record della tabella. Ecco la tabella persons del database demo:

+----+------------+-----------+----------------------+
| id | first_name | last_name | email                |
+----+------------+-----------+----------------------+
|  1 | Peter      | Parker    | [email protected] |
| 2 | John | Rambo | [email protected] |
|  3 | Clark      | Kent      | [email protected]   |
| 4 | John | Carter | [email protected] |
|  5 | Harry      | Potter    | [email protected] |
+----+------------+-----------+----------------------+

Esempio di codice PHP qui sotto eliminerà dalla tabella personsfirst_nameRegistri delle persone che corrispondono a John

Esempio: metodo orientato ai processi

<?php
/*Prova a connettersi al server MySQL. Supponiamo che tu stia eseguendo MySQL.
Server con impostazioni predefinite (utente senza password "root") */
$link = mysqli_connect("localhost", "root", "", "demo");
 
//Controllo della connessione
if($link === false){
    die("Errore: Impossibile connettersi. ". mysqli_connect_error());
}
 
//Tentativo di esecuzione dell'eliminazione
$sql = "DELETE FROM persons WHERE first_name='John'";
if(mysqli_query($link, $sql)){
    echo "Le registrazioni sono state eliminate con successo.";
} else{
    echo "Errore: Impossibile eseguire $sql ". mysqli_error($link);
}
 
//Chiudi la connessione
mysqli_close($link);
?>

Esempio: metodo orientato agli oggetti

<?php
/*Prova a connettersi al server MySQL. Supponiamo che tu stia eseguendo MySQL.
Server con impostazioni predefinite (utente senza password "root") */
$mysqli = new mysqli("localhost", "root", "", "demo");
 
//Controllo della connessione
if($mysqli === false){
    die("Errore: Impossibile connettersi. ". $mysqli->connect_error);
}
 
//Tentativo di esecuzione dell'eliminazione
$sql = "DELETE FROM persons WHERE first_name='John'";
if($mysqli->query($sql) === true){
    echo "Le registrazioni sono state eliminate con successo.";
} else{
    echo "Errore: Impossibile eseguire $sql. " . $mysqli->error;
}
 
//Chiudi la connessione
$mysqli->close();
?>

Esempio: metodo PDO

<?php
/*Prova a connettersi al server MySQL. Supponiamo che tu stia eseguendo MySQL.
Server con impostazioni predefinite (utente senza password "root")*/
try{
    $pdo = new PDO("mysql:host=localhost;dbname=demo", "root", "");
    //Imposta il modello di errore PDO su eccezione
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e){
    die("Errore: Impossibile connettersi. " . $e->getMessage());
}
 
//Prova a eseguire la query
try{
    $sql = "DELETE FROM persons WHERE first_name='John'";  
    $pdo->exec($sql);
    echo "Le registrazioni sono state eliminate con successo.";
} catch(PDOException $e){
    die("Errore: Impossibile eseguire $sql. " . $e->getMessage());
}
 
//Chiudi la connessione
unset($pdo);
?>

Dopo l'eliminazione,personsLa tabella apparirà come segue:

+----+------------+-----------+----------------------+
| id | first_name | last_name | email                |
+----+------------+-----------+----------------------+
|  1 | Peter      | Parker    | [email protected] |
|  3 | Clark      | Kent      | [email protected]   |
|  5 | Harry      | Potter    | [email protected] |
+----+------------+-----------+----------------------+

Come puoi vedere, le registrazioni sono state eliminate con successo dalla tabella persons.

Attenzione:La clausola WHERE dell'istruzione DELETE specifica quali record devono essere eliminati. Se viene omessa la clausola WHERE, tutti i record saranno eliminati.