Для управления файлами я использую foreach
цикл, в котором отображаются все файлы. Теперь хочу foreach
удалить файлы с $_POST
,
Когда я эхом pathinfo($dir.'/'.$file, PATHINFO_DIRNAME).'/'.$file;
в foreach рядом с каждым файлом указывается точное местоположение файлов.
Теперь для каждого файла я хочу сделать что-то подобное в foreach
цикл:
if(isset($_POST['delete'])) {
unlink($_POST['unlink']);
}
<form method="post">
<input type="hidden" name="unlink" value="<?php pathinfo($dir.'/'.$file, PATHINFO_DIRNAME).'/'.$file; ?>" />
<input type="submit" name="delete" value="Delete">
</form>
Я знаю, что это не правильно, но я надеюсь, вы понимаете, что то, чего я хочу достичь, ясно.
Как я могу это сделать?
Метод, описанный ниже, на 100% небезопасен, и если код переходит в общедоступную область, вы можете попрощаться со своим сервером.
Для удаления одного файла вы можете сделать это:
index.php
<form method="POST" action="delete.php">
<input type="hidden" name="delete_path" value="/path/to/your/file.pdf">
File.pdf <button type="submit">Delete</button>
</form>
delete.php
<?php
$delete_result = false;
$unlink_error = '';
if(isset($_POST['delete_path']) && is_file($_POST['delete_path']))
{
$delete_result = unlink($_POST['delete_path']);
$unlink_error = error_get_last();
}
if($delete_result)
{
echo 'Successfully deleted '.$_POST['delete_path'];
}
else
{
echo 'Uh oh, Spaghettios :(<br><br>';
echo 'Last known error<br>'.$unlink_error;
}
Я использую путь unlink (ФАЙЛ)
echo $ new_file_dert = ФАЙЛ . «/’.$template_name;
<form method="post">
<input type="hidden" name="unlink" value="<?php echo $new_file_dert; ?>" />
<input name="delete" type="submit" class="btn-delete submitdelete" value="Delete">
</form><?php
echo $ new_file_dert = ФАЙЛ . «/’.$template_name;
if( isset( $_POST['delete'] ) ) {
unlink($_POST['unlink']);}