ここから後のPHPスクリプトは,common/common.php を読み込む完成版の書き方にします。教材を消去する delete.php では,対象レコードをPDOで取得し,実ファイルを削除してからデータベース上のレコードを削除します。
source_common/delete.php
<?php
// delete.php: 教材の消去
session_start();
require_once __DIR__ . '/common/common.php';
$member = login_check();
$id = (int)($_GET['id'] ?? 0);
if ($id > 0) {
$sql = 'SELECT change_name FROM learning WHERE id = :id';
$stmt = $dbh->prepare($sql);
$stmt->bindValue(':id', $id, PDO::PARAM_INT);
$stmt->execute();
$learning = $stmt->fetch();
if ($learning) {
$path = __DIR__ . '/learning_folder/' . $learning['change_name'];
if (is_file($path)) {
unlink($path);
}
$sql = 'DELETE FROM learning WHERE id = :id';
$stmt = $dbh->prepare($sql);
$stmt->bindValue(':id', $id, PDO::PARAM_INT);
$stmt->execute();
}
}
header('Location: learning.php');
exit();