在庫に車のリストがあり、それぞれに最大 12 枚の写真を含めることができます。必要に応じて車をうまく消去できますが、問題は写真も消去することです。
したがって、次のようなクエリを実行できます。
$pictures = "picture1, picture2, picture3, picture4, picture5, picture6, picture7, picture8, picture9, picture10, picture11, picture12";
$data = mysql_fetch_assoc(mysql_query("SELECT $pictures FROM `auto` WHERE `auto_id` = $autoid"));
$data
変数を使用すると、次のように写真の名前にアクセスできますecho $data['picture1'];
データベース内のフィールドが空でない限り、各画像をループする for ループを作成しようとしています。データからこれらのファイル パスの配列を作成し、配列をループして、unlink()
?
SO FAR SOLUTION [動作しますが、改善が必要ですか?]
if (isset($_POST['delete']) === true)
{
$pictures = "picture1, picture2, picture3, picture4, picture5, picture6, picture7, picture8, picture9,
picture10, picture11, picture12";
$data = mysql_fetch_assoc(mysql_query("SELECT $pictures FROM `auto` WHERE `auto_id` = $autoid"));
$a = 1;
while ($a <= 12)
{
$picturepath = $data['picture'.$a];
if (empty($picturepath) !== true)
{
unlink('../../' . $picturepath);
}
$a++;
}
mysql_query("DELETE FROM `auto` WHERE `auto_id` = $autoid");
header('Location: ../../admin.php?manage_vehicles');
exit();
}