如何从文件夹中删除单个文件?当我单击我的删除链接时,它会从文件夹中删除所有上传的文件。
链接:
<td><a href="Ad_delete.php?$Id=<?php echo $Row['Id'];?>" onClick="return confirm('Are you sure you want to delete this selected file ?')">Delete</a>
代码:
<?php
// Including the database connection file
include_once 'Ad_updbconnect.php';
// Getting Id of the data from url
$Id = $_GET['Id'];
$Del = glob('uploads/*'); // Get all file names
foreach ($Del as $File) {
if (is_file($File)) {
unlink($File); // delete file !
}
}
// Deleting the row from table
$Result = mysqli_query ($Con, "DELETE FROM ibgsec_uploads WHERE Id=$Id");
$Row = mysqli_fetch_array($Result);
// Redirecting to the display page.
header("location: Ad_uploads.php");
?>
这是我正在做的唯一的事情,我已经尝试了很多方法来正确执行命令,但它不起作用。
答案 0 :(得分:0)
您的代码会明确删除上传中的每个文件。你有什么期望?
$Del = glob('uploads/*'); // Get all file names
foreach ($Del as $File) {
if (is_file($File)) {
unlink($File); // delete file !
}
}
$Id
是文件名吗?似乎有风险,但您想要尝试将其与$File
进行比较。将某些内容与$File
进行比较,否则您只是将它们全部删除。
您还在链接$Id
:<a href="Ad_delete.php?$Id=<?php echo $Row['Id'];?>"
中命名您的参数,但将其设为Id
:$Id = $_GET['Id'];
。然后通过在数据库查询中包含它来打开自己的SQL注入。