unlink

Mattepuffo's logo
Eliminare le immagini con PHP e MySQL

Eliminare le immagini con PHP e MySQL

Ultima parte della serie.

L'articolo predente lo trovate qua.

Eravamo rimasti a come ordinare le foto della galleria.

Adesso vediamo come eliminarle.

Prima di tutto creiamo la funzione per l'eliminazione (usando PDO):

function delImg($nome) {
global $config;
try {
$prepare = $config->getPdo()->prepare("DELETE FROM gallery WHERE nome=?");
$prepare->execute(array(
$nome
));
} catch (Exception $e) {
die($e->getMessage());
}
}

La funzione è molto semplice e prevede una classica istruzione di DELETE.

Mattepuffo's logo
Cancellare file con PHP

Cancellare file con PHP

Per cancellare dei file con PHP basterebbe la funzione unlink().

Facciamo allora dierttamente un passo e vediamo come sia possibile cancellare più insieme.

Supponiamo di avere una pagina che carica tutte le immagini di una determinata cartella.

Nel link postato possiamo vedere come fare a caricare automaticamente le immagini.

Partendo da quello. e apportando qualche modifica, arriviamo a una cosa del genere:

<table>
    <form action="" method="post" enctype="multipart/form-data" name="form_elimina">
        <tr>
            <td>
            </td>
            <td>
                <input type="submit" value="Elimina" name="elimina_img" />
            </td>
        </tr>
        <?php
        $dirname = "../gallery";
        $images = scandir($dirname);
        sort($images);
        foreach ($images as $file) {
            if ((substr($file, -5) == ".jpeg") || (substr($file, -4) == ".jpg") || (substr($file, -5) == ".JPEG") || (substr($file, -4) == ".JPG") || (substr($file, -4) == ".png")) {
                echo <<<HTML
<tr>
<td>
<input type="checkbox" name="check[]" value="$file" />
</td>
<td>
<img src="../gallery/$file" alt="" oncontextmenu="return false;" style="border: 1px solid black;" />
</td>
</tr>
HTML;
            }
        }
        ?>
    </form>
</table>

Abbiamo intabellato la pagina e aggiunto un form e una checkbox.